- ベストアンサー
【マクロ】IF複数条件の上限について
マクロ初心者です。 IF複数条件についてお聞きしたいのですがよろしくお願いします。 ■内容■ E列に入っているデータをF列に条件出力するマクロを作成したいです。 その際、指定したコード(全50条件:01A~50X)以外を全て「その他」にしたいのですが可能でしょうか? <マクロ> ActiveSheet.Range("F2:F50").FormulaR1C1 = _ "=IF(OR(RC[-1]=""01A"",RC[-1]=""02B"",RC[-1]=""03C"",RC[-1]=""04D""・・・・・・・,RC[-1]=""50X"",RC[-1]=""""),RC[-1],""その他"")" ■問題■ ・条件が50個とたくさんあるためうまく処理されません。条件に上限があるのでしょうか? ・プログラムが長いのと見やすくするため改行をしたいのですが、エラーになってしまいうまくプログラム文中の改行ができない。 何回か試行錯誤してみましたがうまくいきませんでした。 どなたか分かる方がいらっしゃいましたらご助言いただきたいです。 よろしくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (1)
- grumpy_the_dwarf
- ベストアンサー率48% (1628/3337)
回答No.2
お礼
条件式がかなり長かったので制限にひかかっていたと思います。 同じ値ならその値を返し、違う場合は「その他」を返す。 と言った処理の方がスマートですね。 教えていただきました式を入れてみたのですが・・・ =IF(ISNA(MATCH(E2,A:A,0)),"その他",E2) 違う値の場合に「その他」が反映されず、「0」が反映されて しまいました。 A列にはコード一覧は入っている状態なのですが、どうしたら良いでしょうか?