![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
No.3ベストアンサー
- 回答日時:
> 少し時間がたった後、
タイマーではないので、その解釈では問題あるでしょう。
プログラムで実行している関数を抜けたタイミングだと思われます。
OS に制御が戻って次の処理が実行できる状態になったときに、OS が再描画
処理を命令します。
> ボタンA.Refresh();
Excel でもコントロールによってできたりできなかったり。
例えば、UserForm の Frame には Repaint があります。
(OS が再描画命令できるのだから内部処理は存在するのだろうけど、プログラム
から利用できるように公開されていない。)
総じて DoEvents が紹介されたりしますが、C# にも Application.DoEvents
があります。ヘルプで内容を確認できると思いますが、再描画の命令ではなく、
副作用があります。
これっていう良い方法は無いと思います。
上記に挙げたような内部処理を理解した人が、状況に応じてコーディングするか、
副作用込みで DoEvents するかといったところでは。
No.2
- 回答日時:
>他に裏で処理が動いていると、すぐに非活性にならず、
>少し時間がたった後、非活性になります。
問題は、こちらの方ではありませんか?
概ね、ここのカテゴリを書く人は、VB系の経験者だけですから、他の言語を知っているということは関係ないわけで、単に知らないなら知らないだけで良いと思います。ましてやC#なら、いずれ、VBAのVB6系は、外に追いやられることになるでしょうから、書いている側の立場が逆になるのかもしれません。
Private Sub CommandButton1_Click()
CommandButton1.Enabled = False
End Sub
特に、ボタンのRefresh のメソッドはありませんし、必要ありません。
これ自体は、何の問題もありません。
「裏の処理」の対処をどうするかですが、マクロが動いている最中で、他に動くのはDDEぐらいだけですから、それを、どういうように防ぐか、その手段がいろいろありますから、ボタンだけを言われたところで、分かりません。
例えば、
Application.ScreenUpdating =Fasle ---->True で挟んで、画面のアクセスを防ぐか。
Application.EnableEvents =False ------>True で挟んで、イベント類を止めるか
Application.Calculation = xlCalculationManual ----> xlCalculationAutomatic で、組み込み関数の動きを止めるか、
Application.Interactive = False ---> True で、DDEやユーザー割り込みを止めるか、
いろんな方法があります。
No.1
- 回答日時:
VBA というのは Visual Basic for Application という意味です。
この Application というのはいろいろあります。
それぞれやり方が違います。
Excel Access Word etc...
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 扇風機・冷風機・サーキュレーター 扇風機リモコンの反応劣化。接点復活材で対処。 4 2022/08/14 21:34
- Visual Basic(VBA) VBAで早押しゲームを作りたい 4 2022/05/12 13:46
- JavaScript スマフォではボタンを表示させたくない 2 2023/01/20 14:26
- Excel(エクセル) 【マクロ】ボタンを押すごとに、A1セル、A2セル、A3セルに日付を入力 3 2023/01/25 00:12
- プリンタ・スキャナー キャノンmp490プリンター【エラー番号5400】で【プリンタートラブルが発生しました。電源を入れ直 2 2023/07/24 17:45
- 健康・生活トーク エレベータを降りるときに、、、 1 2023/03/02 23:44
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Visual Basic(VBA) Vba コマンドボタンイベントの共通化 2 2022/05/27 19:01
- その他(生活家電) テレビリモコンのボタン修理 6 2022/05/02 22:30
- Visual Basic(VBA) Vba 電卓 一文字消すボタン 3 2022/05/04 13:40
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
エクセルVBAでオプションボタンを無効にする方法
Excel(エクセル)
-
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
-
4
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
5
Access VBAでクエリーのレコード件数を取得したいのですが
その他(データベース)
-
6
マクロが登録できません
Excel(エクセル)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
組み込みCプログラムで実数型
-
VBAでのコントロール操作
-
MIPS と クロック周波数の換算方法
-
H8Sで割り込み発生時の飛び先ア...
-
命令網羅率の計算問題です
-
CPUのHTについて教えてください。
-
電子透かしを使用した場合の著...
-
【有効数字について】 授業で、...
-
文字の容量(サイズ)についての...
-
実行計画の「COST」と「BYTE」...
-
EXCELでの16進数取り出し、上...
-
JIS、SHIFT-JIS、EUCはなぜでき...
-
携帯電話の略語であるMBって英...
-
KBのMB違いって
-
改行削除の便利な方法について
-
EXCEL16進⇒浮動小数変換したい
-
シフトjisコードで記載された40...
-
ワードの改行について
-
32bit = 4GB(バイト)?
-
(*^_^*) キロバイトと字数の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラム言語FortranとCの違...
-
命令網羅率の計算問題です
-
組み込みCプログラムで実数型
-
VBSとVBA
-
VBAでのコントロール操作
-
COM1(RS232C)とUSB仮想COMポー...
-
MIPS アセンブリ言語
-
なぜ、i++なのか?(ものすごく...
-
64ビット化による処理速度低下...
-
アセンブリ言語で。
-
パイプライン処理の処理能力に...
-
任天堂64の64 CPUの仕...
-
ステート数とは
-
arduino
-
マイコンのビット数とクロック数
-
H8Sで割り込み発生時の飛び先ア...
-
IPCについて
-
PICマイコンのプログラムについ...
-
MIPS と クロック周波数の換算方法
-
CPUのHTについて教えてください。
おすすめ情報