• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBA ユーザフォームを非アクティブ固定にしたい)

VBAユーザフォームを非アクティブ固定にしたい

このQ&Aのポイント
  • エクセルVBAで作成されたプログラムで、処理の進捗を表示しているユーザフォームのフォーカスが移動してしまう問題があります。
  • 現在のコードでは、処理が進む度にユーザフォームにフォーカスが移るため、他の作業が不便です。
  • ユーザフォームの進捗表示を確認しながら、フォーカスが移動しないようにするコードを探しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.2

AppActivate Application.Captionで、エクセルに制御を戻せば良いと思います。 下記はご参考までに。 Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Sub test() Dim i As Long UserForm1.Show vbModeless For i = 1 To 10 Sleep 5000 DoEvents UserForm1.Label1.Caption = CStr(i) UserForm1.Repaint AppActivate Application.Caption Range("A1").Value = i Next i End Sub

nama2007
質問者

お礼

ありがとうございます!いただいたコードで思うような処理になりました!ありがとうございました。

その他の回答 (1)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

シートにテキストボックスを配置し、そのテキストボックス内に表示させるようにすればフォーカスが移ってしまうといったことは起きません。検討してみてください。

関連するQ&A

専門家に質問してみよう