2016-09-01 20 views
1

非常に複雑なExcel式をどのように書くことができますか?非常に複雑なExcelの数式ですか?

通常、Excelの式は次のとおりです。IF(ISNUMBER(SEARCH(substring,text)), "Yes", "No")。これは、読み取り可能なコードではなく1つのラインの混乱を持つことが重要だ

1) conditional statements 
2) loops 
3) calling other formulas 

:どのように多くを持つコードの私は巨大な式を書くことができ、約300行

。 もちろん、Excelはこの仕事のための書き込みツールではありませんが、私は非常に古いアプリケーションを持っており、書き直す余裕はありません。

+2

vbaモジュールと関数を使用して、それを分解してメンテナンスできるようにしますか?それが複雑なのであれば、 'formula'や' function'ではなく 'program'と考えるでしょう。 –

+1

いくつかのデータと期待される結果を提供すれば、理解して答えを出す方が簡単です。より簡単な方法があるかもしれません。 –

+1

複合体は私たちに何も教えてくれません。そして、300行のコードは、私たちにそれほど多くのことを教えてくれます。あなたがVBAを使って話しているコード行を話しているということです。それがどれだけ多くの行であるかではなく、それがいかに効率的で正しいかです。 – logixologist

答えて

1

1)条件文

IF

が、ネストされたIFSはすぐに書くことが困難と調整/読みづらい得ます。標準的な代替策は、一連のIFをルックアップテーブルで置き換えることです。 Googleスプレッドシートの場合は、極端な例が here(500文字から25文字まで)になります。

2)質問のうち、UDF介し以外

ループ。

3)おそらく他の式

キーを呼び出します。あなたの例のために、各要素を破る:

=SEARCH(substring,text) 

一つのセル内(B1言う)を数式にその結果を参照:

=IF(ISNUMBER(B1), "Yes", "No") 

この式は複雑であり、多くのセルにわたって繰り返すことができ。

あなたの具体的な例については、別のオプションは、デフォルトの出力(TRUE/FALSE)に頼ることであろうというよりも "はい"/"いいえ":

=ISNUMBER(B1) 

だから、48文字から23 + 13、およびフォローするのが簡単です。

名前の範囲も非常に役立ちます。

関連する問題