• ベストアンサー

エクセル VBA 特定文字がある行を別シートに移動

C列にA,B,C,D,E(赤枠部分)の文字列が入力された表があります。 マクロ実行時下記のようにするには、VBAのコードをどのように記入すれば、よろしいでしょうか? AとBが入力されている行をシート2にコピー Cが入力されている行を切り取りしシート2に貼り付け(下の行は上方向にシフト) Dが入力されている行を切り取りしシート3に貼り付け(下の行は上方向にシフト) Eが入力されている行を切り取りしシート3に貼り付け(下の行は上方向にシフト) エクセルは2000及び2007です。 よろしくお願い致します。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

淡々と。 sub macro1()  dim h as range  for each h in range("C1:C" & range("C65536").end(xlup).row)  select case h.value  case "A", "B"   h.entirerow.copy worksheets("Sheet2").range("A65536").end(xlup).offset(1)  case "C"   h.entirerow.cut worksheets("Sheet2").range("A65536").end(xlup).offset(1)  case "D", "E"   h.entirerow.cut worksheets("Sheet3").range("A65536").end(xlup).offset(1)  case else  end select  next  range("C:C").specialcells(xlcelltypeblanks).entirerow.delete shift:=xlshiftup  worksheets("Sheet2").range("1:1").delete shift:=xlshiftup  worksheets("Sheet3").range("1:1").delete shift:=xlshiftup end sub

n151713m
質問者

お礼

勉強になりました。 ありがとうございます。

関連するQ&A