Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


9670 / 13644 ツリー ←次へ | 前へ→

【26106】IF関数で あき 05/6/23(木) 18:30 質問[未読]
【26107】Re:IF関数で りん 05/6/23(木) 18:39 回答[未読]
【26108】Re:IF関数で あき 05/6/23(木) 18:52 発言[未読]
【26109】Re:IF関数で りん 05/6/23(木) 18:58 回答[未読]
【26111】Re:IF関数で あき 05/6/23(木) 19:09 質問[未読]
【26112】Re:IF関数で りん 05/6/23(木) 19:13 回答[未読]
【26113】Re:IF関数で あき 05/6/23(木) 19:17 質問[未読]
【26115】Re:IF関数で りん 05/6/23(木) 19:32 回答[未読]
【26117】Re:IF関数で あき 05/6/23(木) 19:49 お礼[未読]

【26106】IF関数で
質問  あき  - 05/6/23(木) 18:30 -

引用なし
パスワード
   =IF(A1="A","1",IF(A1="B","2"))
というように、A1にAと入力があれば1に、Bと入力があれば2にというIF関数を作りました。

これを
=IF(A1="A","1",IF(A1="B","2"),IF(A1="C","3"))
とすると
「この関数に対して、多すぎる引数が入力されています。」
とエラーメッセージが出てしまいます。

これを解決するにはどうすればよろしいでしょうか?
宜しくお願いいたします。

マクロではありませんが、お願いいたします。

【26107】Re:IF関数で
回答  りん E-MAIL  - 05/6/23(木) 18:39 -

引用なし
パスワード
   あき さん、こんにちわ。

>=IF(A1="A","1",IF(A1="B","2"),IF(A1="C","3"))
=IF(A1="A","1",IF(A1="B","2",IF(A1="C","3")))
2番目の分岐が閉じてしまっているので、1番目の分岐が3つあるような状態になっていました。

A,B,Cしか入力しないのならば、
=Text(CODE(A1)-64,"0")
でも同じような結果になります。

【26108】Re:IF関数で
発言  あき  - 05/6/23(木) 18:52 -

引用なし
パスワード
   りんさん、こんにちは。
ご返信ありがとうございます♪

実は変換するほうは数字ではなく、文字なのです。
しかもA〜Fまでのものを指定したいのです。
どのようにすればよろしいでしょうか?

>A,B,Cしか入力しないのならば、
>=Text(CODE(A1)-64,"0")
>でも同じような結果になります。
これの場合は数字である場合でよろしいでしょうか?

【26109】Re:IF関数で
回答  りん E-MAIL  - 05/6/23(木) 18:58 -

引用なし
パスワード
   あき さん、こんばんわ。

>実は変換するほうは数字ではなく、文字なのです。
>しかもA〜Fまでのものを指定したいのです。
>どのようにすればよろしいでしょうか?

>>=Text(CODE(A1)-64,"0")
 A -> 1
 B -> 2
 C -> 3
 ((略))
 F -> 6
としたいということで、良いなら、
この数式をどこかのセルに入れて、A1セルにA〜Fを入れてみてください。

なお、戻ってきた値を計算に使ったりするのならば、
=CODE(A1)-64
でいいです。

【26111】Re:IF関数で
質問  あき  - 05/6/23(木) 19:09 -

引用なし
パスワード
   りんさん、ご返信有難うございます。

> A -> 1
> B -> 2
> C -> 3
> ((略))
> F -> 6
この1〜6をa〜fとしたい場合はどうすればよろしいでしょうか?

数字であればうまくいきました(^^)

【26112】Re:IF関数で
回答  りん E-MAIL  - 05/6/23(木) 19:13 -

引用なし
パスワード
   あき さん、こんばんわ。
>> A -> a
>> B -> b
>> C -> c
>> ((略))
>> F -> f
>この1〜6をa〜fとしたい場合はどうすればよろしいでしょうか?
>
>数字であればうまくいきました(^^)

大文字を小文字にしたいならば、
=LOWER(A1)
です。

【26113】Re:IF関数で
質問  あき  - 05/6/23(木) 19:17 -

引用なし
パスワード
   ではあ〜かなどの文字に指定したい場合はどうすればよろしいでしょうか?

【26115】Re:IF関数で
回答  りん E-MAIL  - 05/6/23(木) 19:32 -

引用なし
パスワード
   あき さん、こんにちわ。
>ではあ〜かなどの文字に指定したい場合はどうすればよろしいでしょうか?
ベタなやりかたですが。
=MID("あいうえおか",CODE(A1)-64,1)
または
=CHOOSE(CODE(A1)-64,"あ","い","う","え","お","か")

そろそろ、きりがなくなってきましたね(笑)
せっかくのVBA質問箱なので、関数作ってみてはいかがですか?

【26117】Re:IF関数で
お礼  あき  - 05/6/23(木) 19:49 -

引用なし
パスワード
   りんさん、ありがとうございます。

>=CHOOSE(CODE(A1)-64,"あ","い","う","え","お","か")
でばっちりうまくいきました(^^)

>せっかくのVBA質問箱なので、関数作ってみてはいかがですか?

マクロもほんのちょこっとだけやっているのですが、まだまだ初心者で、どうすればいいのかもわからない状態です(><)

9670 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free