VBAでは、リストボックスの内容を着実に成長しているテキストファイルのテキストで繰り返し更新しています。リストボックスを更新するために行っているループの実行中に、ユーザーが制御を維持できるようにする方法はありますか(リストボックスをスクロールし、ボタンを押します)?application.waitの代わりに使用することもできます。のように、更新-> x秒待ちます(ユーザーはまだ何かを行うことができます->再度更新します->繰り返します。
質問する
4930 次
1 に答える
1
これが始まりです。通常のモジュールで、次のコードを貼り付けます。
Sub ShowUserForm()
UserForm1.Show vbModeless
End Sub
Sub UpdateTextBox()
Dim ws As Excel.Worksheet
Set ws = ThisWorkbook.Worksheets(1)
With UserForm1.ListBox1
.List = ws.Range("A1:A" & ws.Range("A" & ws.Rows.Count).End(xlUp).Row).Value2
.ListIndex = .ListCount - 1
End With
Application.OnTime Now + TimeValue("00:00:5"), "UpdateTextBox"
End Sub
ユーザーフォームで、次のコードをUserForm_Activateイベントに貼り付けます。
UpdateTextBox
ブックのSheet1の列Aの値をコードで更新します。
テストするには、ShowUserFormを実行します。
于 2012-01-10T21:39:23.467 に答える