アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセル2007を使用しています。

A列とB列に下記のように入力されている時、C列に文字数の少ない方を関数で表示させるにはどうしたらよいでしょうか?
なおかつ、A列とB列の文字数が同じ場合はA列の文字を表示させたいです。

A列       B列       C列
リンゴ     オレンジ     リンゴ
あいうえお   ABC       ABC
時計       帽子      時計

よろしくお願いいたします。

A 回答 (3件)

その用途に都合の良い関数は知らないですが、基本的な関数の組み合わせでもできますよ。



まずは文字列の取得にlen関数があります。
引数にA列やB列のセルを指定すれば文字数がわかります。
これをif関数で比較して、条件に合わせてA列かB列のセルを表示させればできあがりです。

数式は今後のためにも一度考えてみてください。

この回答への補足

考えて分からなかったので質問しております…。
lenとifを使うところまでは分かるのですが…。

補足日時:2013/05/13 08:31
    • good
    • 0
この回答へのお礼

もう一度考えたらできました。

=IF(LEN(A2)>LEN(B2),B2,A2)

でいけました、

ありがとうございました。

お礼日時:2013/05/13 08:35

A列やB列が空の場合、一方の列が空の場合も含めてC1セルには次の式を入力して下方にドラッグコピーします。



=IF(COUNTA(A1:B1)=0,"",IF(COUNTA(A1:B1)=2,IF(LEN(A1)<=LEN(B1),A1,B1),IF(A1="",B1,A1)))
    • good
    • 0

別解を添付図に


E1: {=INDEX(A1:D1,MATCH(MIN(LEN(A1:D1)),LEN(A1:D1),0))}
  (配列数式)
「A列とB列で文字数が少ない方をC列に表示」の回答画像3
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!