3
私はVBAにはとても新しいので、本当に助けてくれてありがとう! 私は毎日00時にはsaveasのコードを持っています:10時間ですごく効果があり、セルの変更のコードがありますが、それらを組み合わせる方法はわかりません... セルが変更されてもsaveasする必要があります00:10時間待機し、温度データ値が前日に属しているため、保存日から1日を減算します。前もって感謝します!VBA SaveAsと同時にセルが変更される場合
'Cell change is at Sheet2
Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$20" Then
Call teste
End If
If Target.Address = "$G$20" Then
Call teste
End If
End Sub
'ThisWorkbook
Private Sub Workbook_Open()
Application.OnTime TimeValue("00:10:00"), "Abre"
End Sub
'Module1
Sub Abre()
Application.OnTime TimeValue("00:10:00"), "Abre"
Dim datestr As String
datestr = Format(Now, "yyyymmdd, hhmm")
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs "D:\Temperature Data\DailyTemp " & datestr & ".xlsm"
End Sub
'Module2
Sub teste()
MsgBox "Did not work"
End Sub
手動でセルの値を変化させながら、それは働いたが、自動的にそれがのTimeValueを待っていた(私が欲しかったもの)が、私はマクロの変更を保存した時点で保存、セルの変更時間を無視していました。 Sheet2をアクティブにしておく必要がありますか?私は24/7を開いてSheet1が必要です!私はコードが何をしているのか理解しようとしましたが、私はまだできません...私はVBAにとって非常に新しいです...あなたの助けに本当に感謝します! – Automat
@Automat私のコードを更新しました。私は最後にスケジュールされた手順を維持するためにパブリック変数を追加した。そうすれば、 'Worksheet_Change'で取り消して何度も呼び出すことを防ぐことができます。これがあなたが記述した問題を解決するかどうかはわかりませんが、試してみることができます;) –