• ベストアンサー

今日の日付が入った行のデータを取得するマクロ

エクセルで別のブックに入っているデータを今日の日付が入っている行にコピーする、あるいはその行から貼り付けるマクロを教えてください。 具体的には例えば、 1)日付が順番にBook1 A列に縦に並んでいます。 Book 2にあるA1:D1のデータをBook1のA列にある本日の日付の横、例えばA10にあるとすればB10:E10にコピー・貼り付けしたい。 2)同様に日付が順番にA列に縦に並んでいて、本日の日付がA10にあり、B10:E10のデータをそのひとつ下のB11:E11にコピー・貼り付けしたい。 宜しくお願いいたします。

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

  • ベストアンサー
  • toshi_2000
  • ベストアンサー率30% (306/1002)
回答No.1

2)に回答します。 Set FIND_CELL = Range("A:A").Find(Date) GYO = FIND_CELL.Row Range("B" & GYO & ":E" & GYO).Copy Cells(GYO + 1, 2).PasteSpecial

gucchi-you
質問者

お礼

ありがとうございます。できました。 1)もいただいた回答の応用で組んでみたらできるようになりました。 毎日この単純作業で時間をとられていたので、大変助かります。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • ham_kamo
  • ベストアンサー率55% (659/1197)
回答No.2

VBA勉強中の者です。 1)だけですが、練習と思ってなんとか作ってみました。 エラーハンドリングなどはしていないので、もしうまく動かなかったらすみません。 "Book2.xls"や"Sheet1"などのブック名、シート名が実際には別の名前の場合は同様に実態に即して書き換えてください。 Sub CopyToday() Dim Gyou As Integer Gyou = Range("Sheet1!A:A").Find(Date).Row Workbooks.Open "Book2.xls" Workbooks("Book2.xls").Activate Range("Sheet1!A1:D1").Copy Workbooks("Book1.xls").Activate Range("Sheet1!B" & Gyou & ":E" & Gyou).PasteSpecial End Sub

gucchi-you
質問者

お礼

ありがとうございます。 試してみたところ、以下のエラーメッセージが出てしまいました。 「オブジェクト変数またはwithブロック変数が設定されていません」 No.1の方の回答でうまくいったのですが、こちらで出たエラーの原因は何でしょうか?

すると、全ての回答が全文表示されます。

関連するQ&A