いつもお世話になっております。
表題の件で2つほど質問があります。
1.実行した時、ブック自体を最小化して、初期値入力用のユーザーフォームだけを画面に表示しようとした所、どうしても、一番前に表示されません。
何かウィンドウ等が開いていると、ステータスバーのエクセルの表示が点滅するだけで、なんらかのアクションを起こさないと、ユーザーフォームが見えるようになりません。
2.97ではプログレスバーが使用できないので、ユーザーフォーム上に文字で、
(例えば「処理中です・・・・X/5600」のように表示し、Xをカウントアップする)
経過を知らせたいのですが、いろいろ試行錯誤しましたが、出来ませんでした。
不特定多数の部署で、不特定の人が使用する可能性があるので、ブックをダブルクリックすると全自動で動作するように運用します。そのような事情なので、上記2つの機能を是非とも組み込みたいのですが、お知恵を拝借出来ませんでしょうか?
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
プログレスバーは
別にUserFormを作って
UserForm1からボタンで
UserForm2.Show
するなどしてください。
UserFormに、ラベル「Label1」を作って下さい。
Private Sub UserForm_Activate()
With Label1
.SpecialEffect = 2
.BackColor = vbBlue
www = .Width
.Width = 0
End With
For i = 1 To 1000
Me.Caption = i
Label1.Width = i / 1000 * www
Me.Repaint
Next
End Sub
説明が不足の場合は質問ください。
Excel97で確認しました。
ちなみに両方とも本の丸写しなので出典を
(株)秀和システム
Excel2000 VBA 実践プログラミング
いろいろ勉強になります。
良かったら一度目を通してみてください。
ありがとうございます!!
実際にプログレスバーを表現できるようにしていただけたとは、オドロキました。
どうも、BVAは機能が充実し過ぎていて、まだ全体を把握出来ていないようです。まだまだ精進が足りないということですか・・・
Private Sub UserForm_Activate()の使い方を教わったので、理解できているか、応用で、始めに自分で言っていた、X/Y表示を書いて見たところ、上手くいきました。
実際の処理は、このFor~Nextの間で実行すればいいわけですね。
もしもそれで上手く行かなかった場合、改めて質問させていただくとして、今回はこれで一旦、締め切ります。
教えていただいた書籍も、是非入手して勉強したいと思います。
何からなにまで、本当にありがとうございました。
No.1
- 回答日時:
新規ブックでテストしてください。
Thisworkbookと
UserFormに以下のものを
貼り付けてください。
Thisworkbookに
Private Sub Workbook_Open()
UserForm1.Show
End Sub
UserFormに
Private Sub UserForm_Initialize()
Application.WindowState = xlMinimized
AppActivate "Microsoft Excel"
End Sub
プログレスバーは作成中です。
早速の回答、ありがとうございます。
私の試みは、ほとんど正解だったようですが、
>AppActivate "Microsoft Excel"
というコマンド(?)を知らなかったので、上手く行かなかったようです。
後は、まんま私の書いた記述通りでした。
大変勉強になりました、ありがとうございます。
>プログレスバーは作成中です。
次も考えていただいてるんですか。本当に申し訳ありません。
引き続き、よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
- JavaScript ラジオボタンによるフォームの開閉を行いたい 3 2022/03/31 21:30
- Excel(エクセル) エクセルのセルの書式設定・ユーザー定義の条件設定について 1 2022/08/17 21:56
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- gooブログ ブログの記事を書きだしのみに表示したい 1 2022/06/25 19:11
- JavaScript 空白で入力フォームのボタンをクリックしたら、ブラウザの上部からjavascriptで 表示されるアラ 1 2022/05/20 11:16
- Visual Basic(VBA) vba メモリ節約 3 2022/09/16 21:45
- グループウェア Macでオープンオフィスが開きません 1 2023/01/14 14:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
ExcelVBAのユーザーフォームの...
-
'ユーザーフォーム右上隅の[×...
-
MSGBOXのフォント大きさ変更
-
Hideについて(.NET)
-
Microsoft Formsの「個人情報や...
-
【VBAユーザーフォームで閉じる...
-
VBA ユーザーフォームを速く開...
-
フォームウィンドウを最前面に...
-
ユーザーフォーム上に現在日時...
-
VBAでユーザーフォームを再表示...
-
Form_Load と Form_Activate の...
-
ブックをCloseまたはQuitで閉じ...
-
vb2008にてDefaultCellStyleが...
-
エクセルVBAのフォームを最...
-
VBA(エクセル)のユーザー...
-
ユーザーフォームのテキストボ...
-
EXCEL ユーザーフォームのタイ...
-
Access-VBAのPublic変数につい...
-
エクセルVBA フォーム上でOnkey...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
ユーザーフォームのテキストボ...
-
Microsoft Formsの「個人情報や...
-
Excelにて、ユーザーフォームで...
-
ExcelVBAのユーザーフォームの...
-
モーダルフォームとモードレス...
-
クリックイベントなのに、2回ク...
-
Form_Load と Form_Activate の...
-
フォームウィンドウを最前面に...
-
VBAでユーザーフォームを再表示...
-
Hideについて(.NET)
-
【VBAユーザーフォームで閉じる...
-
MSGBOXのフォント大きさ変更
-
VBA コンボボックスとテキスト...
-
ACCESSのフォーム、開くんです...
-
ユーザーフォーム上に現在日時...
-
'ユーザーフォーム右上隅の[×...
-
エクセルVBAのフォームを最...
-
コントロールの存在確認
-
VBA(エクセル)のユーザー...
おすすめ情報