こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

行コピーして、今日の日付の行に貼り付けるマクロ

こんにちは、エクセルマクロについて、助けて頂きたく質問させていただきました。
添付しました画像のような表があり、
セルA2に「=TODAY()」が入っていて、セルB2から右は別シートのデータを参照しています。
マクロを実行すると、2行目を行コピーし、セルA3以下の日付からセルA2の日付(今日の日付)を探し出して、行貼り付けしてほしいです。

行コピーや値で貼り付けはマクロの記録を使って、詳しくない私でもなんとか作ることはできるのですが、
今日の日付を探し出して、そこに貼り付ける。というマクロは作れませんでした・・・。
お助け下さい、宜しくお願いします!

※補足します
セルA2の今日の日付は便宜上入力しているだけです。無い方がマクロを組みやすいのなら、無くせます。

投稿日時 - 2018-04-24 15:17:17

QNo.9491870

困ってます

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

貼り付けるときに,参照している数式を数値に変えていますが,この辺は適宜,自分の好きなように変更してください。
なお実際に探しているのは今日の日付ではなくて,A2にかかれている内容です。=TODAY()と書かれているのであれれば同じことですけどね。
Sub aaa()
nr = Range("A3").End(xlDown).ROW
Set myRange = Range("A3:A" & nr)
keyWord = Range("A2").Value
Set myObj = myRange.Find(keyWord, LookAt:=xlWhole)
If myObj Is Nothing Then
MsgBox keyWord & "が見つかりません"
Else
Range("2:2").Copy
myObj.PasteSpecial xlPasteAll
myObj.PasteSpecial xlPasteValues
Application.CutCopyMode = False
End If
End Sub

投稿日時 - 2018-04-24 16:12:05

お礼

早速の回答ありがとうございます。
試してみたところ、思い通りの動きになりました!
とても助かります!エラー時のメッセージまで用意していただいて、嬉しい限りです・・・!
こちらの構文(?)からいろいろ応用できるように頑張って理解してみようと思います!
ありがとうございました。

投稿日時 - 2018-04-24 17:13:41

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問