No.1
- 回答日時:
例示の「顧客ID = 1」の「顧客ID」を、どのような利用をなさろうとされているのか、によります。
「変数」という「入れもの」は、フォーム上の「テキストボックス」だったり、Dimで宣言する Integer型やLong型やString型であったりします。
VBAでForm上に定義してあるオブジェクト(例:TextBox1)を参照する場合は
Forms!TextBox1.Text = 1
をコマンドボタンのClickイベントに記述するなどします。
ご回答ありがとうございます。
顧客IDというのは数値型のフィールドです。
フィールドに1という値を入力したいだけなのです。
なにか宣言のようなものが必要なのでしょうか。
No.2
- 回答日時:
申し訳ありませんが、よくわからないのですが、フォーム上にフィールド(テキストボックスのことだと思いますが)がないのに、なぜ、どこに、1を表示、あるいは入力するのでしょうか。
存在しないテキストボックスに、値を入力しようとしてもできないのは、Access2002の仕様というより、至極当たり前のことだと思うのです。
フォームではなくて、テーブルの、当該レコードの「顧客ID」フィールドに1を入力するのですか?
それなら、いくつか方法があると思います。
1) アクションクエリーを作って、それを呼び出す。
2) ADODBを使って、SQLを走らせる。
3) フォーム上の「顧客ID」をソースにする非表示のテキストボックスを作って、そこに書き込む。
はずしてますかね。
ご回答ありがとうございます。
>フォームではなくて、テーブルの、当該レコードの「顧客ID」フィールドに1を入力するのですか?
はい、そうなんです。
顧客IDというフィールドを変数として使用したいと思っており、
変数ならばわざわざフォーム上に表示させる必要も無いと思ったしだいです。
基本的にフォーム上に無ければ入力はされないということなんですね。
教えていただいた3)の方法をとろうと思います。
後学のために教えていただきたいのですが、1)の呼び出すというのはどのような表記をすればいいのでしょうか。
No.3
- 回答日時:
#1です。
フィールドとは「顧客ID」という名のテキストボックスなんですね?
Forms!<フォーム名>.[顧客ID] = 1
をコマンドボタンのClickイベントに記述してください。
<フォーム名>は、現物にあわせ適宜変更してください。
これからテキストボックスを配置するなら、Text1といった名前でしょうから、顧客IDに変更するなどしてください。
#2さんの1)呼び出すとは、オブジェクト「クエリ」で「更新クエリを作成し、呼び出す(=クエリを実行する)」ということです。
No.4ベストアンサー
- 回答日時:
余計なことかもしれませんが、フォーム上のテキストボックスには、アクセスが勝手にフィールドと同じ名前をつけます。
が、フィールドにつながっている別のものです。ですから、テキストボックスにフィールドAとおなじ名前をつけて、フィールドBをソースにしてもよいのです(やったことありませんが、できるはずです)。
本題に戻して、アクションクエリを呼び出すには DoCmd オブジェクトの OpenQuery メソッドを使用します。
例えばコマンドボタンのクリックイベントに
Private Sub コマンドボタン_Click()
DoCmd.OpenQuery "クエリ名"
End Sub
と書きます。
クエリ(ご質問の場合は更新クエリになりますが)は、普通にクエリビルダで作成します。
クエリが選択クエリなら、その結果が表示されます。
詳しくはヘルプをご参照ください。
ついでに ADO を使ったやり方。
Private Sub コマンドボタン_Click()
Dim Cnxn As ADODB.Connection
Set Cnxn = CurrentProject.Connection
Cnxn.Execute "SQL"
End Sub
SQLとは、言ってみればクエリを逐語的に記述したものです。
ADOは、VBAから直接テーブルを操作するしくみです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Access で 特定の文字の個数を...
-
アクセスで追加した項目に全て...
-
Accessを開きなおすとテキスト...
-
Access2002の重複クエリで大文...
-
accessvba 複数条件でFilterを...
-
Access2010での、レポートの両...
-
ACCESS クエリ抽出する際、重複...
-
アクセス2007でオートナン...
-
追加クエリで特定フィールドの...
-
SQLステートメントのFROM句・・・
-
アクセス クエリのフィールド...
-
途中で改行されたCSVをAccessに...
-
Access:値が求めたい値の2倍...
-
テキストボックスにクエリ結果...
-
Accessのクエリでハイパーリン...
-
Accessのテーブルのフィールド...
-
Accessで、1つの項目に複数の...
-
差込印刷での全角表示について...
-
SQL文で パラメータが少なすぎ...
-
エクセルにおける「フィールド...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アクセスで追加した項目に全て...
-
Accessで、1つの項目に複数の...
-
Accessのテーブルのフィールド...
-
テキストボックスにクエリ結果...
-
テーブルでメモ型になっている...
-
Accessを開きなおすとテキスト...
-
Accessで、テーブルに入力した...
-
Access で 特定の文字の個数を...
-
Accessのクエリでハイパーリン...
-
access フォームを開くと「パ...
-
Access:値が求めたい値の2倍...
-
accessでの文字列の混ざった連...
-
途中で改行されたCSVをAccessに...
-
アクセスのクエリ 1文字以上を...
-
Accessの電話番号フィールド
-
アクセスのクエリに「PHONETIC...
-
【急】Access 4桁の数字の頭...
-
ACCESSで2つフィールドの日付...
-
アクセス クエリのフィールド...
-
追加クエリで特定フィールドの...
おすすめ情報