• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excelのマクロについて)

Excelマクロ初心者向け!アクティブなセルから右に6つ目のセルとそのセルから右に1つ、下に1つ目のセルに現在の時間を記入する方法

このQ&Aのポイント
  • Excelについて全くの初心者で、マクロを作成したい場合、アクティブなセルから右に6つ目のセルとそのセルから右に1つ、下に1つ目のセルに現在の時間を記入することができます。
  • 以下のマクロを記述すれば実現できますが、的はずれかもしれませんので、参考までにご覧ください。
  • Sub 時間入力() ActiveCell.Offset(0, 6).Activate SendKeys "^(:)" SendKeys "{TAB}" ActiveCell.Offset(1, 0).Activate SendKeys "^(:)" SendKeys "{TAB}" End Sub

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

  • ベストアンサー
  • tsubuyuki
  • ベストアンサー率45% (699/1545)
回答No.2

SendKeyは不安定みたいなので使わないほうがよろしいかと。 一例ですが Sub 時間入力()  ActiveCell.Offset(0,6)=Format(Time,"hh:nn")  ActiveCell.Offset(1,7)=Format(Time,"hh:nn") End Sub Formatは、数値の体裁を指定する関数です。 秒まで必要なら、"hh:nn:ss" などとして使います。 ただし、該当セルに書式設定がある場合は、そちらが優先されます。 日付が欲しいなら、TimeをDateに書き換えます。 日付+時刻の両方なら、Nowを使います。 ちなみに・・SelectやActivateを使っていないので、 ActiveCellはあくまでも「マクロを走らせた瞬間の」アクティブセルです。 なので、マクロの2行目でも、アクティブセルから1行・7列Offsetしてやります。

その他の回答 (1)

  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

以下でよろしいかと。 Sub 時間入力() ActiveCell.Offset(0, 6).Value = Date ActiveCell.Offset(0, 7).Value = Date ActiveCell.Offset(1, 7).Value = Date End Sub

yabubin
質問者

お礼

すぐに回答していただき、ありがとうございました。