プロが教える店舗&オフィスのセキュリティ対策術

ソフト excel2003

I列(赤枠部分)に文字列が入力された表があります。
マクロ実行時下記のようにするには、VBAのコードをどのように記入すればよろしいでしょうか?

『 △ 』ボタンをクリックすると
シート1の赤枠内のセルに△が入力されている行を切り取りしシート2に貼り付け
(下の行は上方向にシフト)

『 × 』ボタンをクリックすると
シート1の赤枠内のセルに×が入力されている行を切り取りしシート3に貼り付け
(下の行は上方向にシフト)

※ シート1の内容は日毎に更新されますので、更新後、『 △ 』ボタンをクリックするとその時点で△が入力されているものはシート2のリストへ追加され、『 × 』ボタンをクリックすると×が入力されているものはシート3のリストへ追加されるようにしたいです。

急ぎの仕事なので、困っています。
宜しくお願い致します。

「エクセル VBA 特定文字がある行を別シ」の質問画像

A 回答 (1件)

とりあえず△の方をサンプルとして作りました。


×の方はこれを改造してください。

Sub Sankaku()
  'Sheet2の挿入位置(C列は結合セルではなく、必ず何か入っている事)
  nMax2 = Sheets("Sheet2").Cells(Rows.Count, 3).End(xlUp).Row + 1

  With Sheets("Sheet1")
  nMax1 = .Cells(Rows.Count, 9).End(xlUp).Row
    For i = nMax1 To 2 Step -2
      If .Cells(i, 9) = "△" Then
        'A~J列を移動対象とする
        .Range(.Cells(i, 1), .Cells(i + 1, 10)).Copy
        Sheets("Sheet2").Cells(nMax2, 1).Insert Shift:=xlDown
        .Range(.Cells(i, 1), .Cells(i + 1, 10)).Delete Shift:=xlUp
      End If
    Next i
  End With
End Sub
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています