![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?a65a0e2)
こんばんわ。
教えていただけないでしょうか。。。
ワークシート上にコマンドボタンがあり、それを押すと集計を始めます。
その際にユーザーフォームで「集計中」と書いたものを表示させ、バックで集
計したいと思っておりますが、うまくいっておりません。
流れとしては、
ワークシート上に、コマンドボタンをクリックさせユーザーフォームを表示さ
せる「***.show」を記述し、集計するためのコードが書いてある標準モジュー
ル「module2」へ移動させる書き方をしたら、
***.show
の部分で止まってしまいました。
***.showから集計のコードへ移すには何かコツがいるのでしょうか???
恐れ入りますが、ご教示のほど宜しくお願いします。
No.4ベストアンサー
- 回答日時:
ANo2の方のを少し改良すると
'シートモジュール----------------------------------------------
Private Sub CommandButton1_Click()
Call Test
End Sub
'標準モジュール----------------------------------------------
Sub Test()
Dim i As Long
UserForm1.Show vbModeless
DoEvents
For i = 1 To 2000
ActiveSheet.Range("A" & i) = i
'ここを改良
If i mod 10 = 0 then
UserForm1.Caption = "ただいま処理中・・・・" & i
DoEvents
End if
Next i
Unload UserForm1
End Sub
ウィンドウズの処理(メッセージキュー?)の中では、画像処理の優先度が低いのです。
なので、表示を更新したい場合はDoEventsを入れて、表示をリフレッシュさせるのです。
ありがとうございます。
>
ウィンドウズの処理(メッセージキュー?)の中では、画像処理の優先度が低いのです。
なので、表示を更新したい場合はDoEventsを入れて、表示をリフレッシュさせるのです。
>
なるほど。。。
お蔭様で完成させることができました。
ありがとうございます。
今後とも何卒宜しくお願いいたします。
No.3
- 回答日時:
とりあえず切り分けします。
Private Sub Frm集計中_Activate()
msgbox "テスト"
食費DB化
End Sub
MsgBoxをユーザーフォームのコードに追加して、メッセージボックスが出てくるか確認してください。
No.2
- 回答日時:
Show を モードレスで実行すれば良いかと思います、、、たぶん。
下記はアクティブシートのA列に書込みに行くので、試すなら新規ブックで。
'シートモジュール----------------------------------------------
Private Sub CommandButton1_Click()
Call Test
End Sub
'標準モジュール----------------------------------------------
Sub Test()
Dim i As Long
UserForm1.Show vbModeless
DoEvents
For i = 1 To 2000
ActiveSheet.Range("A" & i) = i
UserForm1.Caption = "ただいま処理中・・・・" & i
Next i
Unload UserForm1
End Sub
ありがとうございます。
うまくいきました。
しかしユーザーフォームに書いた内容(「集計中...」)という文字が表示されておらずの状態です。
処理時間は10秒くらいですが、vbmodelessだと文字は表示されないものなのでしょうか?
恐れ入りますが、お時間ある時に教えていただければと思います。
宜しくお願い致します。
No.1
- 回答日時:
一例ですが・・
シート1にこんなマクロを書いて
Private Sub CommandButton1_Click()
UserForm1.Show
End Sub
ユーザーフォームには
Private Sub UserForm_Activate()
test '名前です
End Sub
標準モジュールには
Sub test()
'実行させたいコード
unload userform1
End Sub
これで動くはずですよ。
ありがとうございます。
それでもユーザーフォームで止まってしまっているような気がしますして、以下に実際に書いたコードを記しますので添削をお願いできませんか?
(ワークシート上のコマンドボタン)
Private Sub 食費DB_Click()
Frm集計中.Show
End Sub
(ユーザーフォームのコードです)
Private Sub Frm集計中_Activate()
食費DB化
End Sub
(標準モジュールに書いたコードです)
Sub 食費DB化()
Unload Frm食費DB化
End Sub
---
お願い致します。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【VBA】元のシート内の文字列を別シートと比較し、一致したら元のシートの別のセルへ転記する方法。 3 2023/03/23 17:30
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) ユーザーフォームが立ち上がらない 2 2022/06/10 18:57
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- Excel(エクセル) vba 同じブック内での転記について 4 2023/01/15 14:42
- Visual Basic(VBA) 以前シートを集めて1シートへ繋げる下記コードをご教授いただき作成しました。 今回すでに集めてある「ま 1 2022/08/29 20:38
- JavaScript 空白で入力フォームのボタンをクリックしたら、ブラウザの上部からjavascriptで 表示されるアラ 1 2022/05/20 11:16
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/08 15:45
- Visual Basic(VBA) 集計シートA列のコードと一致する右に並んだシート名(コード)の3行目から10行目をコピーして貼り付け 4 2022/08/18 15:24
- JavaScript ソースコードは下の共有コードサイト「張り紙」にあります。 入力フォームの javascript で 1 2022/05/11 11:01
このQ&Aを見た人はこんなQ&Aも見ています
-
それもChatGPT!?と驚いた使用方法を教えてください
仕事やプライベートでも利用が浸透してきたChatGPTですが、こんなときに使うの!!?とびっくりしたり、これは画期的な有効活用だ!とうなった事例があれば教えてください!
-
何回やってもうまくいかないことは?
みなさんには、何回やってもうまくいかないことはありますか?
-
みんなの【マイ・ベスト積読2024】を教えてください。
積読、ついついしちゃいませんか?そこでみなさんの 「2024年に買ったベスト積読」を聞きたいです。
-
あなたの人生で一番ピンチに陥った瞬間は?
これまでの人生で今振り返ると「あの時、1番ピンチだったなぁ...」という瞬間はありますか?
-
「これいらなくない?」という慣習、教えてください
現代になって省略されてきたとはいえ、必要性のない慣習や風習、ありませんか?
-
vba userFormのSubを標準モジュールから呼び出す方法を教えてください
Visual Basic(VBA)
-
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
Excel VBAで、ユーザーフォームの値を、モジュールで使用したい。
Visual Basic(VBA)
-
-
4
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
5
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
6
エクセルVBAでUserFormを起動した時
Excel(エクセル)
-
7
VBAでfunctionを利用しようとしたときに「引数は省略できません」というエラーが出ます
Visual Basic(VBA)
-
8
フォームのテキストボックスなどの変数名を標準モジュールから参照は可能か?
Visual Basic(VBA)
-
9
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
10
UserForm1.Showでエラーになります。
工学
-
11
標準モジュールからフォームをコントロールしたい
Visual Basic(VBA)
-
12
エクセルVBAでオプションボタンを無効にする方法
Excel(エクセル)
-
13
モジュールからフォームのボタンをクリックするには?
Access(アクセス)
-
14
VBA:ユーザーフォームのマルチページに色を付けたい。
Word(ワード)
-
15
ExcelVBAで、ユーザーフォームを新規Bookにコピーしたい
IT・エンジニアリング
-
16
テキストボックスの番号を使ったFor~Next文について
Visual Basic(VBA)
-
17
Excel VBA:フォーム←→セルのアクティブ切り替え
Excel(エクセル)
-
18
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
19
UserForm.showでマルチページ1を見出し
Visual Basic(VBA)
-
20
指定の動作中ユーザーフォーム終了方法
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
【ExcelVBA】全シートのセルの...
-
特定の文字を含むシートだけマ...
-
【VBA】シート名に特定文字が入...
-
VBAで指定シート以外の選択
-
エクセルのシート名変更で重複...
-
ユーザーフォームに入力したデ...
-
【Excel VBA】Worksheets().Act...
-
別のシートから値を取得するとき
-
シートが保護されている状態で...
-
Excel VBA リンク先をシート...
-
実行時エラー1004「Select メソ...
-
IFステートの中にWithステート...
-
userFormに貼り付けたLabelを変...
-
Worksheet_Changeの内容を標準...
-
エクセルVBA Ifでシート名が合...
-
C#でExcelのシートを選択する方法
-
ブック名、シート名を他のモジ...
-
エクセルで通し番号を入れてチ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
特定の文字を含むシートだけマ...
-
Excelマクロのエラーを解決した...
-
【ExcelVBA】全シートのセルの...
-
別のシートから値を取得するとき
-
excelのマクロで該当処理できな...
-
ユーザーフォームに入力したデ...
-
ブック名、シート名を他のモジ...
-
【VBA】シート名に特定文字が入...
-
シートが保護されている状態で...
-
VBAで指定シート以外の選択
-
エクセルのシート名変更で重複...
-
XL:BeforeDoubleClickが動かない
-
VBA 存在しないシートを選...
-
IFステートの中にWithステート...
-
実行時エラー'1004': WorkSheet...
-
Excel VBA リンク先をシート...
-
エクセルVBA Ifでシート名が合...
-
ExcelVBA:複数の特定のグラフ...
-
ExcelのVBAのマクロで他のシー...
-
実行時エラー1004「Select メソ...
おすすめ情報