Tulong sa LibreOffice 24.8
Naglilipat ng kontrol sa operating system sa panahon ng macro execution, upang maproseso nito ang mga kaganapan sa paghihintay.
DoEvents nagbibigay ng pagiging tugma sa VBA. Palagi itong nagbabalik ng 0. Ang paggamit nito sa LibreOffice ay hindi kinakailangan.
[Call] DoEvents[()] As Integer
Ang parehong mga halimbawa ay nagtatakda ng isang progresibong counter sa unang cell ng isang bagong bukas na dokumento ng Calc.
Sub DoEventsExample
Dim i As Long, sheet As Object, cell As Object
sheet = ThisComponent.Sheets.getByIndex(0) ' sheet 1
cell = sheet.getCellByPosition(0,0) ' cell A1
For i = 1 To 20000
cell.setString(Str(i))
DoEvents
Next i
End Sub ' DoEventsExample
Sub DoEvents_example
Dim i As Long, ui As Object
GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
Set ui = CreateScriptService("SFDocuments.Calc", ThisComponent)
For i = 1 To 20000
ui.SetValue("A1", i)
DoEvents
Next i
ui.Dispose()
End Sub ' DoEvents_example