
みなさま
こんにちは
ユーザーフォームのイベント処理についておしえください。
ユーザフォームには
Multipageを設定しておりPAGE1にLISTOBOXを配置しております。
ユーザフォーム内にCheckBox1を配置しそのボタンにレ点をいれると
複数行選択(fmMultiSelectMulti)できるように(fmMultiSelectMulti)を設定
チェックボックスをONにすると複数行選択画面になるのですが、
LISTBOX1.AFTERUPDTEイベントが走ってしまします。
回避方法として、同じpage1の領域のなかに適当な「コマンドボタン」
を配置しそのボタンにフォーカスをあてるという処理をいれて「CheckBox1」を押すと
LISTBOX1.AFTERUPDTEが発生しません。
適当なボタン=コマンドボタン15
フォーカスの移動が関係して、AfterUpdateが走っているのかなぁとおもっているんですが 他の方法で回避する方法ってございませんでしょうか?
合計3つのボタンが配置されてます。
ユーザフォーム内には 「CheckBox1」 1つ配置
Multipate(page1)の領域には
「listbox1」、「コマンドボタン15」が1つづつ配置されてます
-------------------------------
Private Sub CheckBox1_Click()
With ListBox1
.MultiSelect = fmMultiSelectMulti
.listStyle = fmListStyleOption
END SUB
---------Afterupdteが発生しないパターン------------
Private Sub CheckBox1_Click()
CommandButton15.SetFocus (これをつけるとlistbox After updateが発生しない)
With ListBox1
.MultiSelect = fmMultiSelectMulti
.listStyle = fmListStyleOption
END SUB
----------コマンドボタン15の処理の中身(参考)-----------------------
Private Sub CommandButton15_Click()
End Sub
No.1ベストアンサー
- 回答日時:
こんにちは
>回避する方法ってございませんでしょうか?
イベントを発生させずに処理を行いたいという意味と解釈しました。
未検証ですが・・・
おきまりの
Application.EnableEvents = False
ではダメということでしょうか?
どうもです。
だめでした。
userform1上にLISTBOXを配置するとAfterUpdateは発生しないのですが、
マルチページ上(page1)に設定すると、AfterUpdateが発生します。
マルチページ上に配置したLISTBOXではAfterUpdateが発生する理由が知りたいです。
あと、Tabstrip上にLISTBOXを配置した場合も発生しません。
No.2
- 回答日時:
AfterUpdateイベント側で最初に状態をみて、本来の処理を行うか否かを判断するしかないのではないでしょうか。
Private Sub ListBox1_AfterUpdate()
If ListBox1.MultiSelect = fmMultiSelectMulti And _
ListBox1.ListStyle = fmListStyleOption Then
Exit Sub
End If
みたいなかんじで。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Access(アクセス) チェックボックスにチェックが入った後の挙動 1 2022/08/21 12:39
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- Visual Basic(VBA) VBAで質問ですが、皆さんはどの様に導き出しているのでしょうか? 6 2022/05/03 21:53
- Access(アクセス) Access IF文でテーブルに存在しない場合の処理について 2 2022/10/10 18:09
- Visual Basic(VBA) 検索のユーザーフォームの表示について 1 2023/03/27 23:31
- Access(アクセス) アクセス テーブルの空白を変数に置換するボタンが作りたい 4 2022/07/08 11:19
- Visual Basic(VBA) userformでSheetを選択して開くコード 1 2023/05/15 16:27
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセルVBA テキストボックスへのセットフォーカスについて
Visual Basic(VBA)
-
Access サブフォームでの選択行の取得
その他(データベース)
-
どこにもフォーカスを当てたくない
Access(アクセス)
-
-
4
イベントの違いを教えてください。
Visual Basic(VBA)
-
5
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
6
Access でレコードセレクタが押されたときのイベントは?
その他(プログラミング・Web制作)
-
7
VBAでユーザーフォームを再表示させたい。
Excel(エクセル)
-
8
入力した値をコンボボックスにすぐに反映させる方法
Excel(エクセル)
-
9
Access フォームのテキストボックスに半角英字のみで入力する設定は
Access(アクセス)
-
10
エクセルVBAでマルチページの切り替え方法の件で
Excel(エクセル)
-
11
SELECTした結果に行番号を求めたい
PostgreSQL
-
12
ACCESS ADOでupdateが効かない
その他(データベース)
-
13
VBA:ユーザーフォームのマルチページに色を付けたい。
Word(ワード)
-
14
ユーザーフォームに入力したデータを保持する方法
Visual Basic(VBA)
-
15
ユーザーフォームのSetFocusが働かない?
その他(プログラミング・Web制作)
-
16
テキストボックスのvalueとtextの違い
Visual Basic(VBA)
-
17
ユーザーフォームのテキストボックスに前回入力した値を表示する Excel
Visual Basic(VBA)
-
18
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
19
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
20
Access VBA の BeforeUpdate と AfterUpdate に違い
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
ユーザーフォームに別シートか...
-
フォームの再読み込み
-
Excel VBA Application.caller...
-
セルをマクロのボタンにしたい。
-
コマンドボタンやイメージにマ...
-
VBAで多数のプログラムを一つの...
-
visualC++6.0でボタン上にマウ...
-
押しっぱなしの処理
-
ユーザフォーム AfterUpdate処...
-
MFCでのボタン配置
-
C#でSendInputを使ったサンプル...
-
DVDトレイを開ける
-
Delphiにて、呼び元の情報を(...
-
ボタン上にビットマップ、アイ...
-
Showメソッド
-
プロシージャからイベントをコ...
-
ボタンの増殖
-
Excel VBA実行中にワークシート...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
ユーザーフォームに別シートか...
-
セルをマクロのボタンにしたい。
-
VBA CommandButtonの文字ずれ
-
Excel VBA Application.caller...
-
C#プログラムで、ボタンをショ...
-
フォームの再読み込み
-
コマンドボタンやイメージにマ...
-
[VB.net] ボタン(Flat)のEnable...
-
Excel マクロ 閉じるボタン
-
VBAで多数のプログラムを一つの...
-
ボタンをマウスで押し続けたと...
-
VB.net でトグルボタンを実現し...
-
プロシージャからイベントをコ...
-
アイコンとボタンの違い
-
VBAのボタンの位置が変わって困...
-
閉じると「+」になり開くと「-...
-
ASP.Net ラベルの内容をすぐに...
-
[Excel VBA]コマンドボタンの入...
おすすめ情報
こんばんは。
listboxのデータ指定方法は
ROW SOURCE a1:c4としております。
ありがとうございました。
イベント回避はできないので、(UPDATE)がはしったら抜ける処理を入れてます。
まぁ。ぼっくんもわかってないのでこちらでしめさせていただきます。(閉店ガラガラ)
それではまた バイバイキーン