0

Excel VBAマクロ実行時、実行中のExcelのセルの値を変更できますか? スクリプト/プログラムの実行時に有効にしたい編集オプション

4

1 に答える 1

0

VBA が多くのループで構成されている場合でも、次を追加することで Excel で処理を実行できます。

DoEvents 

これをループ内に追加すると、プログラムの実行中に他のイベント (ユーザーによる変更など) が発生する可能性があります。

他の人が既にあなたに与えた警告を心に留めておいてください。VBA スクリプトを深刻に混乱させる可能性があります。これは、ユーザーがスクリプトでやり取りする可能性のあるすべての Excel スプレッドシートのコンテンツを実際に台無しにする可能性があるためです。

少し「楽しい」例:

Option Explicit

Sub example_DoEvents()
    Dim timer1 As Date

    timer1 = Now()

    Do While Now() < timer1 + 10 / 60 / 60 / 24 'only let it last for 10 seconds
        DoEvents
        ActiveSheet.Range("A1").Value2 = Selection.Address
    Loop

    MsgBox "END"

End Sub
于 2013-03-21T12:44:22.180 に答える