access2000の構文エラー

このQ&Aのポイント
  • access2000で会社の住所録を作っている際に発生する構文エラーについて教えてください。
  • vbaでプログラムを作っている際に、構文エラーが発生しています。具体的には「ORDER BY 姓カナ,名カナ;」の部分にエラーが出ます。
  • このエラーの原因と解決方法を教えてください。
回答を見る
  • ベストアンサー

access2000の構文エラー

みなさんこんにちは。access2000で会社の住所録を作っているんですが、vbaでプログラムを作っているときにどうしても分からない構文エラーがでるので教えてください・・・ 以下の & "ORDER BY 姓カナ,名カナ;" がどうしてもひっかかります。 ちなみに全体は下です。 よろしくお願い致します。 '概要:サブフォームに個人リストを表示する Private Sub SetSubIndividual() Dim strSql As String Dim frm As Form_個人情報入力 Set frm = Form_個人情報入力 If IsNull(frm.TXT姓カナ) Then Exit Sub strSql = "SELECT 個人ID AS 番号, [姓] & ' ' & [名] & '(' & [姓カナ] & ' ' & [名カナ] & ')' AS 名前 " _ & "FROM 個人情報 " _ & "WHERE 姓カナ Like '" & frm.TXT姓カナ & "*' " & "ORDER BY 姓カナ,名カナ;" frm.FRM名簿SUB.Form.RecordSource = strSql frm.FRM名簿SUB.Requery frm.GRP選択 = fncGetHeader(frm.TXT姓カナ) End Sub

質問者が選んだベストアンサー

  • ベストアンサー
  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.1

前略 & "FROM 個人情報 " _ & "WHERE 姓カナ Like '" & frm.TXT姓カナ & "*' " 後略 行継続 _ が抜けてます。 ORDER BY 句はひとりぼっち。

shangshanrushui
質問者

お礼

nicotinism様 こんにちは。教えていただいたとおりに訂正したところ見事解決いたしました!大変助かりました、ありがとうございました!!!!!!

関連するQ&A

  • 抽出条件でデータ型が一致しません。(エラー 346

    フロント:Access2003 , バック:SQL Server7.0 テーブル名 dbo_TB1(ODBCテーブル) Access2003 日付 データ型(日付/時刻型) yyyy/mm/dd SQL7.0 日付 データ型(smalldatetime) yyyy/mm/dd 以下のモジュールを実行すると、 抽出条件でデータ型が一致しません。(エラー 3464) とエラーが出てしまいます。 よろしくお願いします。 Dim myDate As Date myDate = Date   strSQL = Empty   strSQL = strSQL & "SELECT * FROM dbo_TB1"   strSQL = strSQL & " WHERE 日付 = #" & myDate & "#"   strSQL = strSQL & " ORDER BY 日付" Forms![フォーム].Form.RecordSource = strSQL

  • Access VBAでの構文エラー

    Access2003を使って画像DBを作成しています。 VBAを利用して、AテーブルのidとBテーブルのidの一致を検索し、 検索結果を表形式の「検索結果Form」に表示するプログラムを 作成していますが、以下のコードをコンパイルすると 「構文エラー」が出てしまいます。 どなたか、解決策を教えてください。よろしくお願いいたします。 Dim objCon As DAO.Database Dim objRs As DAO.Recordset Dim strSQL As String Set objCon = Application.CurrentDb strSQL = " select * " _ & " FROM A, B " _ & " where A!id = B!id" Set objRs = objCon.OpenRecordset(strSQL, dbOpenDynaset) '他のフォームに検索結果を表示する方法 'もし検索結果が見つかった場合 If objRs.EOF = False Then MsgBox "見つかりました!", vbOKOnly, "結果" DoCmd.OpenForm "検索結果Form", , , strSQL '検索結果が見つからなかった場合 Else 'Me.txtAge.Value = vbNullString MsgBox "見つかりませんでした", vbOKOnly, "結果" End If objRs.Close

  • Access VBA フォームに表示したい

    Access2000で、帳票フォームにSQLの値を表示させたいのですが、 以下のコードだとフォーム上に最後のレコードしか表示されません。 取得したデータを正しく表示するにはどうしたらよいでしょうか。 ・フォームのtext1のコントロールソースにfld1と書く 以外の方法でできますか? できればすべて非連結で、作成したいです。 (本当はフォームのrecordsourceも設定したくないのですが それは無理でしょうか?) よろしくお願いいたします。 Private Sub Form_Load() Dim conn As Connection Dim rs As ADODB.Recordset Dim strSql As String Set conn = CurrentProject.Connection Set rs = New ADODB.Recordset strSql = "select * from table1" rs.Open strSql, conn, adOpenKeyset, adLockOptimistic, adCmdText Me.RecordSource = strSql rs.MoveFirst Do Until rs.EOF me!text1 = rs!fld1 rs.MoveNext Loop rs.Close Set rs = Nothing conn.Close Set connn = Nothing End Sub

  • Access2007 データ型エラーについて

    お世話になっております。 下記のVBAでコードを数値型からテキスト型に変更したところ、「抽出条件でデータ型が一致しません。」というエラーが出ました。 デバッグをクリックすると、dbs.Execute strSQLの部分が黄色に反転しています。 VBAはあまり詳しくありませんので、エラーが出なくなる方法を教えていただければ助かります。 よろしくお願いいたします。 Private Sub 在庫差引_Click() Dim dbs As Database Dim rst As Recordset Dim strSQL As String Set dbs = CurrentDb Set rst = Me!サブフォーム.Form.RecordsetClone With rst .MoveFirst Do Until .EOF strSQL = "UPDATE マスター " & _ "SET 在庫数 = NZ(在庫数) - " & Nz(!数量, 0) & " " & _ "WHERE コード = " & !コード dbs.Execute strSQL .MoveNext Loop .Close End With End Sub

  • Access2016 構文エラー

    お世話になります。 Access2003から2016へDB変更(MDB→ACCDB)をしたのですが、構文エラーになります。 2003の時には、エラーなど出ませんでしたが、エラー修正箇所を見ても、エラー該当が無いかと考えております。 どなたか、情報下さると有難く思います。 Private Sub ページヘッダー_Print(Cancel As Integer, PrintCount As Integer) Me.Section(acPageHeader).Visible = (Me!txtCnt <> 1) On Error GoTo err_shori '頁のカウント If preNo <> 得意先CD Or intP = Pkei Then intP = 0 intP = intP + 1 txt頁 = "P. " & intP '明細30行で1頁 Dim rst As Recordset, strSQL As String If intP < 2 Then txt前回請求額.Visible = True txt入金額.Visible = True txt繰越金額.Visible = True txt税抜.Visible = True txt消費税.Visible = True txt税込.Visible = True txt今回請求額.Visible = True '請求金額等の取得 Q請求金額一覧より Set rst = db.OpenRecordset("Q請求金額一覧") rst.FindFirst "得意先CD='" & 得意先CD & _ "' and 締切日 = #" & Format(締切日, "yyyy/mm/dd") & "#" If Cur_ing 得意先CD & _ rst("最大化表示",m)  どうも、「Private Sub ページヘッダー_Print(Cancel As Integer, PrintCount As Integer) 」と、最後の 「 If Cur_ing 得意先CD & _」 「 rst("最大化表示",m)」にて、構文エラーになるようです。

  • Access 指定したレコードへ移動

    お世話になります。 Access2003で在庫管理システムを作っています。 商品マスター登録画面にて商品を検索する際 コマンドボタンで検索画面に移動 テキストボックスに入力した文字列を含む商品を 検索画面内のサブフォームに表示、該当レコードをダブルクリックすると 商品マスター登録画面にその商品が表示される…という ところまでなんとかかんとか作りました。 でもレコードソースを書き換えるところがまずいみたいで 商品マスター登録画面には表示したレコード1件のみしか 表示されなくなってしまいます。 私がやりたいのは単なるレコードの移動です… 調べましたがどうしたらいいのかわかりません。 よろしくお願いします。 検索画面内のサブフォームをダブルクリックしたときのコード Private Sub Form_DblClick(Cancel As Integer) On Error GoTo Err_Form_DblClick   Dim strSQL As String   With Application.Forms("商品マスター登録")     strSQL = "SELECT *"     strSQL = strSQL & " FROM 商品マスター"     strSQL = strSQL & " WHERE 商品ID = " & Me.商品ID     Form_商品マスター登録.RecordSource = strSQL         ↑ここをどう変えればいいでしょうか?   End With Exit_Form_DblClick:   Exit Sub Err_Form_DblClick:   MsgBox Err.Description   Resume Exit_Form_DblClick End Sub

  • サブフォームに変数を代入し、RecordSourceの値を取得したい

    サブフォームに変数を代入し、RecordSourceの値を取得したいのですがうまくいきません。 Sub test1() Dim サブフォーム As String Dim フォーム As String フォーム= "土台" サブフォーム = "フォーム1" MsgBox Form_フォーム1.RecordSource End Sub ******************************************************************* Sub test2() Dim サブフォーム As String Dim フォーム As String フォーム= "土台" サブフォーム = "フォーム1" MsgBox Form_フォーム1.RecordSource MsgBox Forms(フォーム).Controls(サブフォーム).RecordSource End Sub オブジェクトは、このプロパティまたはメソッドをサポートしていません。(Error 438) ******************************************************************* Sub test3() Dim サブフォーム As String Dim フォーム As String フォーム = "土台" サブフォーム = "フォーム1" MsgBox Forms(サブフォーム).RecordSource End Sub 実行時エラー'2450' マクロの式またはVisual Basic コート゛で参照されている 'フォーム名'フォームが見つかりません。 ******************************************************************* test1~3のうち test1のみはうまくいくのですが 変数を代入したいです。 ヘルフ゜のには Forms![受注]![受注サブフォーム].Formとなってますが これじゃ変数を代入できないですよね。 どうすればサブフォームに変数を代入しつつ、RecordSourceの値を取得できるのでしょうか? よろしくお願いします。

  • フォーム2を出して フォーム1を閉じたい

    のですが、うまくできません。 何が間違っているのでしょうか Dim WithEvents Frm1 As Form1 Dim WithEvents Frm2 As Form2 ------------------- Frm2 = New Form2() Frm2.Show() Frm1 = New Form1() Frm1.Close() ------------------ net です。

  • Formオブジェクトについて

    Formオブジェクトに関する質問です。 ある関数にフォームオブジェクトを引数として渡してやりたいのですが、何かよい方法はありますでしょうか? 例) Private Sub cmdTest_Click(Index as Integer) Dim frm as Form If Index = 0 then Load_Test(Form 2) Else Load_Test(Form 3) End if End Sub Private Sub Load_Test(frm as Form) frm.Show frm.Label1.Caption = "TEST” End Sub

  • VB.netで標準モジュールからフォームを呼び出す

    お世話になります。 標準モジュールから以下のようにフォームを呼び出しているんですがうまく表示されません。 どこが悪いんですか? 標準モジュール内----------------------   Public Sub Main()     Dim frm1 As New Form1     frm1.Show()   End Sub

専門家に質問してみよう