• ベストアンサー

VBAの条件の書き方を教えてください。

こんにちは。 現在、フォーマット同じ(件数が異なる)のデータファイルを取り込み、変換したファイルをアウトプットするマクロを作っています。 ここで、図のように列Cのデータをもとに、列Dのデータをそれぞれ列Eと列Fに振り分ける構文を教えてください。 VBAについては少しかじった程度です。よろしくお願いします。

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

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率66% (1742/2617)
回答No.2

以下で試してみてください。2行目から始まっているとしてます。 Sub Test() Dim i As Long For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row Select Case Cells(i, "B").Value Case 2 Cells(i, "D").Value = Cells(i, "C").Value Case 3, 4 Cells(i, "E").Value = Cells(i, "C").Value Case "" Cells(i, "D").Value = "" Cells(i, "E").Value = "" End Select Next End Sub

その他の回答 (1)

  • f272
  • ベストアンサー率46% (8626/18446)
回答No.1

こんな感じ Sub test() n = Cells(Rows.Count, 1).End(xlUp).Row - 1 ReDim dd(1 To n, 1 To 2) ss = Cells(2, 1).Resize(n, 3) For i = 1 To n If ss(i, 2) = 2 Then dd(i, 1) = ss(i, 3) ElseIf ss(i, 2) = 3 Or ss(i, 2) = 4 Then dd(i, 2) = ss(i, 3) Else End If Next i Cells(2, 4).Resize(n, 2) = dd End Sub

関連するQ&A