Googleスプレッドシートで、セルに入力されている式の文字数を求める方法についてです。
- 「=LEN(FORMULATEXT(参照先))」という式で、参照先のセルに入力されている式の文字数が求まります。
- 式でない場合(「=」で始まらない場合)はエラーが返ります。
手順
B3:B6の4つのセルに、それぞれ簡単な式と値を入力します。
結果はこうなります。
ここでB3セルに入力した式の長さを求めるため、C3セルに次のように入力します。
=LEN(FORMULATEXT(B3))
単純に「=LEN(B3)」ですと値の長さ(1)が返ってきますので、まず「FORMULATEXT(B3)」で式の文字列を取得し、LEN関数でその長さを求めます。
結果はこうなります。「=1+2」という式の長さである「4」が得られました。
式を下方にフィルコピーした結果です。
FORMULATEXT関数は「=」で始まってさえいればその内容を返し、そうでなければエラーを返しますので、3番目の結果のように「=」で始まらないセルを参照した場合はエラーが返ります。また、最後の結果のように、関数や演算子がなくとも「=」で始まってさえいれば数値が返されます。
なお、参照先の内容が式でない場合にエラーではなく値の長さを返すようにしたい、という場合は次のような式が考えらえれます(B3セルを対象とする例)。
=IF(ISFORMULA(B3),LEN(FORMULATEXT(B3)),LEN(B3))