- ベストアンサー
実行時エラー3061 パラメーターが少なすぎます
piroin654の回答
http://okwave.jp/qa/q7789150.html の続きみたいですが、このSQL文を見ると、 strSQL = "Select * From 顧客情報 " & _ "Where 氏名 ='" & strName & "' " & _ "And 住所='" & strAddress & "' " & _ "And 電話番号_1_='" & strTelNo & "' " において、 >電話番号_1_= のところがどうもひかかっているのでは、と思います。 電話番号のフィールド名が、 >電話番号_1_ ではなく、 電話番号_1 としておられるのではと思いますが。したがって、 >電話番号_1_= を 電話番号_1= にして、 strSQL = "Select * From 顧客情報 " & _ "Where 氏名 ='" & strName & "' " & _ "And 住所='" & strAddress & "' " & _ "And 電話番号_1='" & strTelNo & "' " としてみてください。テーブルをもとに帳票フォームを 作ってみて確認してみました。 なお、フィールド名は余分な記号を用いずに、 電話番号1 のような書き方がいいのではと思いますが。 何かあれば補足してください。
関連するQ&A
- SQLのパラメータ・・
たびたびお世話になっております。 顧客マスタの新規コードを、最大値に1を足して生成しています。 既存の顧客コードの最大値を求める為、 Dim mySQL as Stirng,Rst as Recordset mySQL="SELECT Max(局コード) AS 局コードの最大, 会社コード FROM 顧客マスタ GROUP BY 会社コード HAVING (会社コード=[Forms]![フォーム]![テキスト1]);" Set Rst = CurrentDB.OpenRecordset(mySQL) というSQL文をかきました。 ところが、SQLをレコードセットにすると「パラメータが少なすぎます。1を指定してください(3061)」というエラーメッセージが出てしまいます。 クエリーを作成して実行しても正しい結果を返すのに、SQLだとダメなのはなぜなのでしょうか。 どうぞよろしくお願いいたします。
- ベストアンサー
- その他(データベース)
- "パラメータが少なすぎます。1を指定して下さい。"
Access97を使用しています。 SQLで組んだモジュール中に "実行時エラー '3061'" "パラメータが少なすぎます。1を指定して下さい。" と表示されます。 デバッグをクリックすると下記2行目が黄色になります。 Set Database = CurrentDb Set Table = Database.OpenRecordset("選択クエリー", dbOpenDynaset, dbReadOnly) ← 情報が少ないかもしれませんが、何故このようなメッセージが出るのでしょうか?
- ベストアンサー
- オフィス系ソフト
- accessのvbaでの実行時エラーについて
いつもお世話になっております。 Accessのvbaで下記のコードを実行して、データを 取得したいのですが、OpenRecordsetのところで 「実行時エラー'3615' 式で型が一致しません。」 というエラーがでてしまいます。 ーーーーーーーーーーーーーーーーーーーーーーー Dim db As Database Dim Rec As Recordset Dim strSql As String strSql = "SELECT 入金日 FROM 入金チェック WHERE ID IN(SELECT ID FROM 入居者管理 WHERE 物件名 = '" & strBukken & "')" Set db = CurrentDb() Set Rec = db.OpenRecordset(strSql) ーーーーーーーーーーーーーーーーーーーーーーー 副問合せのしかたがまずいのか、 どうもよくわかりません。 お手数ですが、お分かりの方がおられましたら ご教示お願いいたします。
- ベストアンサー
- その他(データベース)
- 実行時エラー 3061 パラメータが少なすぎますのエラー
Accessで在庫管理のようなものを作成しています。 在庫数のアップデート処理を行おうとすると、「実行時エラー 3061 パラメータが少なすぎます。1を指定してください」のエラーが表示さてしまいます。 Private Sub ZaikoUpdate() Dim strsql As String With Application.CurrentDb If Me.opt凍結使用区分 = cZaikoIn Then strSql = "Update Tストックマスタ" _ & " set 凍結数合計 = 凍結数合計 + "& Me.txt数量.value _ & " ,細胞No = '"& Me.cmb細胞No.value & "'" &" where レーンNo = '"& Me.cmb商品No.value & "'" ElseIf Me.opt凍結使用区分 = cZaikoOut Then & " set 使用数合計 = 使用数合計 + "& Me.txt数量.value _ & " ,細胞No = '"& Me.cmb細胞No.value & "'" &" where レーンNo = '"& Me.cmb商品No.value & "'" 細胞Noをアップデートさせない場合はうまく行くのですが、& " ,細胞No = '"& Me.cmb細胞No.value & "'" を入れると上記エラーが出てしまいます。 どこかおかしいのでしょうか? どなたかアドバイスお願いいたします。
- 締切済み
- オフィス系ソフト
- OpenRecordSet 他について
Accessプロジェクトを使用しています。 Dim strSQL As String Dim DBS As Database Dim RST As DAO.Recordset Set DBS = CurrentDb Set RST = DBS.OpenRecordset("TESTDATA", dbOpenDynaset,dbReadOnly) 「実行時エラー'91': オブジェクト変数またはWithブロック変数が設定されていません。」 と出てきます。デバッグを押すと、 上記最終行でSTOPします。 次のように変更しても同じでした。 Set RST = DBS.OpenRecordset("TESTDATA") 又は Set RST = DBS.OpenRecordset("TESTDATA", dbOpenDynaset) ヘルプ等を見ると、Jetワークスペースでのみ 使用可と出てきます。 ADO,DAO,OpenRecordset等が理解しきれていないように思うのですが、 Access97(DAO?)では 何も出てこなかった上記のような内容、 何故Accessプロジェクトでは 上手くいかないのでしょうか?
- ベストアンサー
- SQL Server
- ACCESS2000VBAでエラー「型が一致しません」
ACCESS2000で、フォーム上にボタンを作り、そのボタンをクリック時に 以下のイベント プロシージャを実行させています。 Dim dbs As Database Dim rst As Recordset Set dbs = CurrentDb Set rst = dbs.OpenRecordset("採番_相談者") Dim Number rst.MoveFirst Number = rst!相談者番号 Number = Number + 1 Me.相談者NO = Number '相談者NOはフォーム上のテキストボックスです。 で上記 Set rst = dbs.OpenRecordset("採番_相談者") の所で、「実行時エラー 13 型が一致しません」とエラーになります。 テーブル:採番_相談者は、オートナンバー型のIDフィールドと相談者番号という7桁のテキスト型で ”1000001”が入っています。(ちなみに、数値型に変えても同じエラーでした。) 詳しい方教えてください。お願いします。
- ベストアンサー
- Visual Basic
- Access2002のVBAエラーで
クエリで抽出したレコードを利用したいのですがうまくいきません。 Dim ds As Database Dim rs As Recordset Set ds = CurrentDb Set rs = ds.OpenRecordset("クエリ名") デバッグすると Set rs = ds.OpenRecordset("クエリ名") で止まります。 「実行時エラー’3061’ パラメータが少なすぎます。1を指定してください」のメッセージです。 どのような意味でしょう。教えてください。
- ベストアンサー
- オフィス系ソフト
- Access2010実行時エラー-21473525
特定のレコードでボタンをクリックすると、以下のエラーが表示されて、「Me.チェック = True」が黄色に反転します。 実行時エラー ’-2147352567(8002009)’ データは変更されています。 文法的におかしなことをしていると思うのですが、エラーが出ない方法を教えていただければ助かります。 よろしくお願いいたします。 Dim dbs As Database Dim strSQL As String Set dbs = CurrentDb strSQL = "UPDATE マスター " & _ "SET 在庫数 = NZ(在庫数) + " & Nz(Me.入庫数量, 0) & " " & _ "WHERE コード = '" & Me.コード & "'" dbs.Execute strSQL Me.チェック = True
- ベストアンサー
- その他(データベース)
- Access2000 実行時エラー '3061':
Access2000(初心者) 下記コードを実行すると実行時エラー '3061': パラメータが少なすぎます。1を指定してください。と出ます。 ※検索したレコードの削除(日付) CurrentDb.Execute "DELETE * FROM テーブル名 WHERE ((([テーブル名].[日付]) Between #2009/01/01# And テキスト名)); " テキスト名に入力されているデータがおかしいのでしょうか? Me.テキスト名 = DateSerial(Format(Date, "yyyy"), Format(Date, "mm")-1, Format(Date, "dd")) 御教授願います。
- ベストアンサー
- Visual Basic
- ACCESS VBAの実行時エラーなんですが
クエリ式’(・・・)’の構文エラー:演算子がありません。 とエラーがでます。 ’(・・・)’の中身は↓ (T_KYORI.02オン1= '0101' and T_KYORI.03オン2= '160' and T_KYORI.15区間距離= '1274' ) です。 お気ずき、の点がありましたら、アドバイスください。 なお、実際の文は strSql = " SELECT T_KYORI.* FROM T_KYORI " & _ " WHERE ( T_KYORI.02オン1= '0101' and T_KYORI.03オン2= '160' and T_KYORI.15区間距離= '1274' );" Set inrec1 = CurrentDb.OpenRecordset(strSql) です よろしくおねがいします
- ベストアンサー
- オフィス系ソフト
お礼
*piroin654 さま たびたびのご回答ありがとうす( ^^ )!! うまくメッセージが表示されるように作業できました ** 本当に助かりました!ありがとうございます◎◎ あとはまた自分でも頑張ってみたいと思います。 ありがとうございました ...✿