エクセルVBA 特定の列に日付が入力されたらマクロを実行する
Q&A
Closed
解決したいこと
特定の列に日付が入力されたらマクロを実行させたいのです。
列名:O列
例)
ECサイトの物販業を運営しておりまして、
エクセルの
シート(リスト)=受注時のデータがあり、処理が完了したら
シート(リスト2)へ処理終了済みとしてデータを移動させたいです。
<処理終了済み>の判断基準として、
シート(リスト)の<O列>に発送日が入力された場合を基準としたいです。
まず、具体的な日付を入れたパターンでマクロを作成してみました。
これ自体は動作確認できたのですが、
●O列の内どの行のO列でも実行する。
という記述がどうしてもできません。
ご存じの方お教えいただけます様お願い申し上げます。
また、作成したマクロの記述は、色々見様見真似で記述しましたので
不要な記述もあるかも知れません。
何卒よろしくお願い申し上げます。
作成したマクロの記述ソースコード
Sub 貼り付け()
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim lastRow1 As Long
Dim lastRow2 As Long
' シートを設定
Set ws1 = ThisWorkbook.Sheets("リスト")
Set ws2 = ThisWorkbook.Sheets("リスト 2")
' Sheetsリストの該当セルの行を指定
Range("O5").Select
ActiveCell.FormulaR1C1 = "10/17/2024"
'アクティブな列の行を指定
ActiveCell.EntireRow.Select
'上記の列・一行を切り取り
Selection.Cut
' Sheetリスト 2の最終行を取得
lastRow2 = ws2.Cells(ws2.Rows.Count, "A").End(xlUp).row
' データを貼り付け
ActiveSheet.Paste ws2.Range("A" & lastRow2 + 1)
'リストに戻る
Sheets("リスト").Select
Range("テーブル1[#Headers]").Select
End Sub