No.2ベストアンサー
- 回答日時:
#1です
> 文字を入れ替え、その入れ替えた文字を再度テキストボックスに入力したい
ここでの「再度」を理解できていないのですが。
どのような記述になっているのでしょうか。
テキストボックス「txt1」に、"(1)" の入力で "第一章" に置き換えるものとした場合、
Private Sub txt1_Change()
If (Me.txt1.Text = "(1)") Then
Me.txt1.Text = "第一章"
End If
End Sub
の様な記述になっていると、
Me.txt1.Text = "第一章"
によって、Change イベントが発生します。
Me.txt1.Value = "第一章"
または、
Me.txt1 = "第一章"
とすることで、イベントを発生させずに値を代入することができます。
ただ、これをすると、更新前処理、更新後処理も発生しないことになります。
更新前処理、更新後処理も発生させつつ、2度処理しないようにする時には、
(a) フラグ制御する
Dim bFound As Boolean
Private Sub txt1_Change()
If (Not bFound) Then
If (Me.txt1.Text = "(1)") Then
bFound = True
Me.txt1.Text = "第一章"
End If
End If
bFound = False
End Sub
フラグが立っていない時だけ、判別/処理する。
Me.txt1.Text = "第一章" をした時点で、変更時/更新前処理/更新後処理まで動き切ります。
(b) 変更時処理を一旦無しにする
Private Sub txt1_Change()
Dim sTmp As String
If (Me.txt1.Text = "(1)") Then
sTmp = Me.txt1.OnChange
Me.txt1.OnChange = ""
Me.txt1.Text = "第一章"
Me.txt1.OnChange = sTmp
End If
End Sub
Me.txt1.Text = "第一章"
する前に、変更時イベントを受け取らないようにします。
Me.txt1.OnChange に "[Event Procedure]" や "[イベント プロシージャ]" が設定されていると、
Private Sub txt1_Change() が呼び出されます。
Me.txt1.Text = "第一章" をした時点で、更新前処理/更新後処理まで動き切ります。
動き切った時には、他へコントロールが移動しても再度イベントが発生することはありません。
Me.txt1.Text に値を代入しなかった場合は、
他のコントロールに移動した時点で、更新前処理、更新後処理が動きます(変更していたら)
Me.txt1.Text への設定は、txt1へフォーカスがある時だけ有効です。
他の処理をしつつ、txt1へ代入&変更時/更新前処理/更新後処理を動かしたい時には、
例えば、ボタンがクリックされた時に
Me.txt1.SetFocus
Me.txt1.Text = "第二章"
と記述します。
2007での動きを記述してみましたが、この内容が得たかったものなのかは??
また、他にも方法があるのかもしれません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) accessデータを指定したExcel、そして指定したセルへエクスポートするaccess VBAコー 2 2023/05/17 17:02
- MySQL データベースの複製の仕方(mysql) 2 2023/05/30 18:24
- その他(パソコン・スマホ・電化製品) EXCELのSUMPRODUCT関数について 2 2022/09/21 17:30
- その他(データベース) 20万行あるデータを動かしたい 2 2023/06/13 15:21
- Excel(エクセル) excelvbaのenableeventsについて 3 2022/08/30 11:20
- その他(プログラミング・Web制作) Accessの代わりのノンプログラムデータベース作成 4 2022/10/21 09:26
- CAD・DTP Autocad Scriptファイルからの入力とコマンドラインからの入力が違う 1 2023/08/01 09:13
- Access(アクセス) accessでexcelを読み込む時のデータ型 1 2022/03/28 19:45
- 俳優・女優 映画の俳優の来日イベントの費用と中止時の費用負担 2 2023/07/19 14:51
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
Access サブフォームでの選択行の取得
その他(データベース)
-
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
フォームを開くときに、コンボボックスの値を選択(アクセスVBA)
Visual Basic(VBA)
-
-
4
VBA ユーザーフォームのChangeイベントを停止したい
Access(アクセス)
-
5
VBAから変更した時だけイベントを発生させない方法
Excel(エクセル)
-
6
ACCSESS2013VBA フォームのレコードソースを変更する
その他(データベース)
-
7
ACCESS──メインフォームでサブフォームのレコード件数をカウントしたい
Access(アクセス)
-
8
親フォームからサブフォームのレコードソースを設定
Access(アクセス)
-
9
サブフォームに対してGoToRecordするには?
その他(Microsoft Office)
-
10
Accessでグローバル変数を宣言して定数を定義したい
その他(データベース)
-
11
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
12
MS Accessでフォームの「開く時」と「読込み時」のイベントの違い
Access(アクセス)
-
13
Access VBA Me.Requery レコードは削除されています エラー
その他(データベース)
-
14
Accessの画面更新を一時的に停止する方法。
その他(データベース)
-
15
ACCESSフォーム入力後の確定
Access(アクセス)
-
16
Accessのフォーム上にレコード数とレコード番号の表示
その他(データベース)
-
17
ACCESSのフォーム、開くんですが、見えないようにするには
Access(アクセス)
-
18
どこにもフォーカスを当てたくない
Access(アクセス)
-
19
アクセスVBAで既に開いているエクセルを閉じたい
Yahoo!ショッピング
-
20
選択したチェックボックスのみチェックを入れたいのですが
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
DELETE文でFROM句を省略した場合
-
accessでイベントを中止するよ...
-
object browser で処理を中断す...
-
トリガーにてUTL_FILEパッケー...
-
oracle sequence
-
他の処理でselectさせないよう...
-
Truncate以外で高速にテーブル...
-
PL/SQLの平行処理について
-
ActiveX DLLでのオラクルのトラ...
-
RDBのテーブル種類の違い
-
年度毎にシーケンスの初期化?
-
行ロックとテーブルロックについて
-
SQLServerでSQL%ROWCOUNT同様の...
-
[性能改善]AccessのDBに大量の...
-
チューニング対象のSQLの見つけ...
-
異なるスキーマからデータを抽...
-
データを削除しても表領域の使...
-
Viewにインデックスは張れ...
-
CLOB型へのINSERT
-
SQLでスキーマ名(所有者名)の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
DELETE文でFROM句を省略した場合
-
他の処理でselectさせないよう...
-
RDBのテーブル種類の違い
-
accessでイベントを中止するよ...
-
同じSELECT文同士でのデ...
-
[性能改善]AccessのDBに大量の...
-
object browser で処理を中断す...
-
DBリンクエラーについて
-
PL/SQLの平行処理について
-
チューニング対象のSQLの見つけ...
-
年度毎にシーケンスの初期化?
-
統計情報の取得=コミットですか?
-
Access2013で操作ログを残した...
-
Oracleから見たOracleの優位性(...
-
ASPからのSQL文でエラーが発生
-
stored procedureの引数について
-
ActiveX DLLでのオラクルのトラ...
-
PL/SQLでmdb(Access)ファイルへ...
-
Oracleの欠点
-
OIP-04129: SELECT FOR UPDATE
おすすめ情報