
今、AccessVBAを本を見ながら勉強している初心者です。
フォームから入力されたコードに検索をしたいのですが、
Dim cnCrrDB As ADODB.Connection
Dim rsKokyaku As New ADODB.Recordset
・
・
・
rsKokyaku.Open "Select * From 顧客マスタ Where _
顧客コード='" & txtKokyakuCode & "'", _
cnCrrDB, adOpenStatic, adLockOptimistic
とあり、[顧客マスタ]テーブルから一致する顧客コードを検索したい。っということは わかるのですが、
顧客コード='" & txtKokyakuCode & "'",
のあたりの意味が、、、不明
ちなみにtxtKokyakuCodeというのは
コードを入力するための テキストボックスの名前です。
シングルクォーテーションとダブルクォーテーションを
どうゆうふうに扱っているのか 教えてくださーい。
お願いします!!(わかりづらくてすみません)
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
> まではセットということでしょうか?
セットという意味では [ ]で閉じられた部分がセットです。
["~='"] & [変数] & ["'"]
>(ちなみに定数の場合は
> ="10000" といことでしょうか?)
定数である場合も、その定数が文字か数値で変わってくるのです。
~は前にも続くの意味です。
文字だったら = '10000'
数値だったら = 10000
日付だったら = #2003/10/29#
です。
No.2
- 回答日時:
こんにちは。
maruru01です。補足ですが。
本来、文字列型フィールドの検索では、検索する文字列を「""」(ダブルクォーテーション)で括らなければなりません。
実際にクエリを作成すると、そのSQLビューでは、検索文字列は「""」で括られています。
しかし、コードで実行する場合はSQL文は文字列で指定するため、全体を「""」で括る必要があります。
したがって、同じ「""」を使うことが出来ないので、「''」(シングルクォーテーション)で代用する、というのが経緯です。
この回答への補足
ありがとうございます。ようやくなんとなくわかってきました。急にシングルクォーテーションが出てきて
「なぜ?なぜ?」となっていました。
ちなみに、
Where 顧客コード='" & txtKokyakuCode & "'",
となっているというのは
Where文で 比較をするのに
='" & 変数 & "'
まではセットということでしょうか?
(ちなみに定数の場合は
="10000" といことでしょうか?)
すいません。よければ教えてください
No.1
- 回答日時:
txtKokyakuCodeが文字列の場合、作成される値が次の形にならないといけないので、
顧客コード='Oct0001'
SQL文のなかではご指摘のように[']で囲ってやる必要があります。
lngKokyakuCode というのがあって、それが数値だったら
顧客コード=10008
という風に 囲む必要がないのでSQLも
顧客コード=" & txtKokyakuCode
でいいのです。
仮に日付を比較する場合は、 ['] の代わりに [#] で囲みます。
登録日=#" & dateToroku & "#"
登録日=#2003/10/27#
となります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 経営情報システム accessでの請求管理について 12 2022/06/11 16:20
- その他(ビジネス・キャリア) スポット取引とは? 1 2023/04/06 15:23
- Excel(エクセル) エクセル 多数のファイルから値を抜き出したい 4 2022/12/12 16:49
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- その他(データベース) accessについて 2 2022/05/31 16:58
- Visual Basic(VBA) 指定月分の顧客データファイルを統合して並べ替え、所定の場所に貼り付ける 3 2022/09/10 07:55
- PDF PDFファイルを分割するマクロの作り方を教えてください。 2 2022/06/24 11:09
- Access(アクセス) Access IF文でテーブルに存在しない場合の処理について 2 2022/10/10 18:09
- Java リレーションエンティティクラスとは何ですか? 2 2023/02/10 00:02
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
このQ&Aを見た人はこんなQ&Aも見ています
-
Accessのクエリで、replace関数を使い、データの中にある”をブランクに置き換えたいのですが
Access(アクセス)
-
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
シングルクォーテーションを含む文字列の更新
Visual Basic(VBA)
-
-
4
パラメータが少なすぎます。1を指定して下さい。""
Excel(エクセル)
-
5
年月日を持つテーブルから年月を指定して抽出したいのですが
その他(データベース)
-
6
アクセスVBAのMe!と[ ]
Access(アクセス)
-
7
Access 同じデータをたくさんのレコード(同一列)に一度に入力するには
Access(アクセス)
-
8
ACCESSのフォーム、開くんですが、見えないようにするには
Access(アクセス)
-
9
Accessの構成をコピーしたい
Access(アクセス)
-
10
SELECTした結果に行番号を求めたい
PostgreSQL
-
11
アクセスで『0の値以外』を表示する方法
Access(アクセス)
-
12
access vbaにてテンポラリーテーブルが作りたいです。
Access(アクセス)
-
13
access インポート時、既にあるデータは上書き
Access(アクセス)
-
14
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
15
テキストボックスのvalueとtextの違い
Visual Basic(VBA)
-
16
Access2010 「演算子がありません」エラー
その他(データベース)
-
17
アクセスVBAで既に開いているエクセルを閉じたい
Yahoo!ショッピング
-
18
AccessのSQLで、FROM句の構文エラー
その他(データベース)
-
19
【Access】Dcount関数の複数条件で順位を付ける方法について
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESS で マクロの中でフィ...
-
Accessで名寄せグループの関係...
-
条件抽出について
-
SQLの抽出方法に悩んでいます(...
-
Access VBAでクエリーのレコー...
-
テーブル1 2 3 の結合
-
Access フォームのデータがテー...
-
SQL抽出方法に悩んでいます③ 度...
-
ADOでレコードを閉じるタイミン...
-
Accessで移動累計
-
Access レコードロックについて...
-
顧客管理のテーブルの設計を教...
-
別のDBからテーブルをコピーす...
-
ワードでの単純作業の効率化に...
-
Access 既に開いているフォー...
-
ファイルメーカーの集計につい...
-
ワードで保存するファイル名の...
-
SQL 顧客マスタから顧客番号...
-
Accessデータベースで行と列を...
-
Access クロス集計クエリについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access VBAでクエリーのレコー...
-
Access フォームのデータがテー...
-
データベースの1要素に複数デー...
-
Access IF文でテーブルに存在し...
-
ワードでの単純作業の効率化に...
-
Access 既に開いているフォー...
-
別のDBからテーブルをコピーす...
-
顧客IDを入力すると顧客名や住...
-
ACCESS で マクロの中でフィ...
-
ワードで保存するファイル名の...
-
Access 縦(行)のデータを横(列)...
-
シングルクォーテーションとダ...
-
ADOでレコードを閉じるタイミン...
-
Access レコードロックについて...
-
Accessデータベースで行と列を...
-
テーブル1 2 3 の結合
-
子フォームから別(孫)フォー...
-
Access2013VBA 複数のテーブル...
-
主キーやオートインクリメント...
-
Accessで名寄せグループの関係...
おすすめ情報