• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:【VBA】 IFの中にIF)

【VBA】 IFの中にIF

このQ&Aのポイント
  • VBAの質問です。IFで条件分岐したあとの処理にさらにIFで分岐を加えたいのですが、どのような構文が適していますでしょうか。
  • VBAでの条件分岐で、IFの中にさらにIFを加える場合、どのような構文が適しているのでしょうか。
  • VBAで、IFの中にさらにIFを加える方法について教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

> Cells(f, 18).Value = If Cells(f, 4).value = 1 Then Cells(f, 13) Else Cells(f, 14) Endif こういう場合は、三項演算子を利用します。 Cells(f, 18).Value = IIf(Cells(f, 4).value = 1, Cells(f, 13), Cells(f, 14)) 三項演算子を2つも3つも組み合わせて利用することも可能です。 ex) IIf(value = 1, "a", IIf(value = 2, "b", "c"))

rihitomo
質問者

お礼

できました!すばらしいです。 三項演算子、初めて聞く名前です。 これからも精進します。 ありがとうございました!

その他の回答 (1)

回答No.1

「if」の中に「if」っていうのはよく使いますよ。 この場合には Sub Test() Dim f As Long Dim lRow As Long lRow = Cells(Rows.Count, 1).End(xlUp).Row For f = lRow To 2 Step -1 If Cells(f, 2).Value = "りんご" Then Cells(f, 2).EntireRow.Delete Else Cells(f, 2).Value = Cells(f, 2) & "0" & Cells(f, 3) If Cells(f, 4).value = 1 Then  Cells(f, 18).Value = Cells(f, 13) Else Cells(f, 18).Value = Cells(f, 14) end if End If Next f End Sub が正しいですね!

rihitomo
質問者

お礼

こちらもできました! VBAは奥が深いですねぇ。 ご回答ありがとうございました!

関連するQ&A