100文字でわかる百科事典『100文字百科』
スポンサーリンク

【Excel】特定のセルの内容を指定時間に別のセルにコピーする方法。VBAを使う

◆PC(パソコン)
画像出典:表計算ソフトウェアExce

※事前準備:VBAを使うのでExcelを別名で保存して、拡張子を「.xlsm」にします。
◆まずVBAを表示させます
Excelの上メニュー(リボン)で右クリック。
メニューから「リボンのユーザー設定」を選択。
ウィンドウが開くので「開発」にチェックを付けてOKを押します。

これでExcelの上メニューに「開発」メニューが表示されます。
開発メニューから「Visual Basic(VBA)」を選択。
これでVBAが開きます。

◆VBAにプログラムを入力する
VBAの左側を右クリック。
メニューから「挿入 → 標準モジュール」を選択。
そこに下記プログラムをコピーして貼り付けましょう。

Dim NextTick As Date

Sub StartTimer()
 NextTick = Now + TimeValue("00:01:00")
 Application.OnTime NextTick, "CheckTime"
End Sub

Sub StopTimer()
 On Error Resume Next
 Application.OnTime NextTick, "CheckTime", , False
End Sub

Sub CheckTime()
 Call CopyValueAtTen
 Call StartTimer
End Sub

Sub CopyValueAtTen()
 Dim currentTime As Date
 currentTime = Now()

 ' 時刻が10:00 AMになったら実行
 If Format(currentTime, "HH:MM") = "10:00" Then
  Sheets("シート名").Range("B2").Value = Sheets("シート名").Range("A2").Value
 End If
End Sub

下記部分は必要に応じて書き換えて下さい。
・「”10:00″ Then」は時刻
・「Sheets(“シート名”).Range(“B2”)」は、貼り付けるセル
・「Sheets(“シート名”).Range(“A2”)」は、コピーするセル
になります。

' 時刻が10:00 AMになったら実行
If Format(currentTime, "HH:MM") = "10:00" Then
 Sheets("シート名").Range("B2").Value = Sheets("シート名").Range("A2").Value

◆VBAプログラムを実行する
「F5キー」を押してウィンドウを開きます。
選択肢から「CheckTime」を選択して「実行」を押しましょう。
以上で設定完了です。
指定時間になるとプログラムが実行されます。

◆VBAをExcelを開いたら自動実行させる
VBAを自動実行させる方法もあります。
VBAの左側から「ThisWorkbook」をダブルクリック。
そこに下記コードを貼り付ける。

Private Sub Workbook_Open()
 StartTimer
End Sub

以上で、Excelを開いたらVBAが自動実行されるようになります。

タイトルとURLをコピーしました