- ベストアンサー
- 困ってます
Docmd.RunSQL 文で 追加時の確認メッセージの省略出来ますか
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
DoCmd.SetWarnings False
関連するQ&A
- AccessのRunSQLのINSERTでの確認メッセージを消す方法。
こんにちは。 AccessのRunSQLのINSERTでの確認メッセージを出さない方法を知りたいと思っています。 下記き構文をAccess2000/VBAにて作成しましたが、 DoCmd.RunSQL "INSERT INTO test VALUES ('a','b');" 「一件追加します・・・・」という確認メッセージが表示されてしまいます。 これを出さない方法を知りたいです。 宜しくお願い致します。
- ベストアンサー
- その他(データベース)
- 命令文が長文になります 行を分割入力出来ますか
何度もお世話になります。 QNo.3140739 の続きです。 以下はレコード挿入のルーチンです Function 介護メモ挿入() on Error GoTo レコード挿入_Err DoCmd.SetWarnings False DoCmd.RunSQL "insert into 介護メモ (利用者,介護日,身体単位,生活単位,開始時刻,年月) values (利用者 , 日付 , 身体単位 , 生活単位 , 開始時刻,年月)", -1 DoCmd.SetWarnings True レコード挿入_Exit: Exit Function レコード挿入_Err: MsgBox Error$ Resume レコード挿入_Exit End Function これで実行は出来たのですが、文中の介護メモは実際にはフィールド数が38ある介護記録というテーブルです。長い命令文になります。 画面内に表示できるように命令文の分割をしたいのですが 以下のように変更したのですが「クエリ式'11:00:00'の構文エラー」と時刻項目は文字列扱いのようです 同様に日付項目は分数式扱い? Function 介護メモ挿入() DIM SQL文 as String SQL文 = "insert into 介護メモ (利用者,介護日,身体単位,生活単位,開始時刻,年月) values (" SQL文 = SQL文 & """" & 利用者 & """," & 日付 & "," & 身体単位 & "," & 生活単位 & "," & 開始時刻 SQL文 = SQL文 & "," & 年月 & ")" On Error GoTo レコード挿入_Err DoCmd.SetWarnings False DoCmd.RunSQL SQL文, -1 DoCmd.SetWarnings True レコード挿入_Exit: Exit Function レコード挿入_Err: MsgBox Error$ Resume レコード挿入_Exit End Function
- ベストアンサー
- オフィス系ソフト
- accessの SQL文 INSERT命令
次のような命令文でを実行すると [INSERT INTOステートメントの構文エラーです。] と エラーメッセージがかえってきます。 文中 介護メモはテーブル名、()内の項目名はフォーム上に定義したテキスト項目名です。テーブルのフィールドは()内のほかデータ型がオートナンバー形式のIDが定義されています。 DoCmd.RunSQL "insert into 介護メモ value(,利用者,日付,身体単位,生活単位,開始時刻)", -1
- ベストアンサー
- オフィス系ソフト
- 確認ダイアログを出さないでレコード追加
MS ACCESS2000です。 今、プログラム的に(つまり自動的に)テーブルにレコードを追加したいのですが、レコードの追加を確認するダイアログが出てしまいます。 今は、以下のようにしています。 docmd.runsql("insert into レコード名 ("フィールド") value (値)") ちょっと、細かいとこ違うかもしれませんが・・・ ユーザーにダイアログを出さないように、レコードと値を追加する方法はないでしょうか?
- ベストアンサー
- その他(プログラミング・開発)
- Oracle10.2.0.4 のDATE型へのインサートについて
Oracle10.2.0.4 のDATE型へのインサートについて 例えば INSERT INTO テーブル名(DATE型の項目) values(TO_DATE('20100819','YYYYMMDD')) で追加した場合、時刻は何時で入るのですか? ご存知の方、教えて下さい! 宜しくお願い致します
- ベストアンサー
- Oracle
- Access2000のVBAについて
下記のプログラムだと挿入が可能になります。 Private Sub 削除_コマンド_Click() If IsNull(Me.社員コード) Then MsgBox ("社員コードが入力されていません") Else Dim strSQL As String strSQL = "INSERT INTO 社員情報テーブル(社員コード,作成日) " _ & " VALUES ('" & Me.社員コード & "', now());" DoCmd.RunSQL strSQL End If End Sub しかし、下記のプログラムだとinsert文の『Me.社員コード』で エラーが発生します。 エラーメッセージは 『メソッドまたはデータメンバが見つかりません』 と表示されます。 上と下とどう違うのでしょうか。 Private Sub 削除_コマンド_Click() If IsNull(Me.社員コード) Then MsgBox ("社員コードが入力されていません") Else Dim strSQL As String strSQL = "INSERT INTO 社員情報テーブル(社員コード,氏名(氏),作成日) " _ & " VALUES ('" & Me.社員コード & "','" & Me.氏名(氏) & "', now());" DoCmd.RunSQL strSQL End If End Sub
- ベストアンサー
- その他(データベース)
- ACCESSの条件で
いつもお世話になっております(^^ゞ DoCmd.RunSQL "insert into 氏名2(氏名) select 氏名 from 氏名 where (氏名= 'あ')" を実行したいと思います。 が、'あ'の部分に変数を使うと上手くできません。 変数はどのように指定すれば良いのでしょうか? たびたびの質問で申し訳ありませんが、よろしくお願いしますm(__)m
- ベストアンサー
- オフィス系ソフト
- リスト外入力(NotInList)時のイベント
こんにちは。 コンボボックスのリスト外入力(NotInList)時のイベントについて教えてください。 ボックスに新しい値を入力した時、 ↓ ”「新しい値」 is not currently in the database. Would you like to add it?”というYesとNoのボタンを設けたメッセージボックスを表示。 ↓ Noを押した時→戻る。 Yesを押した時→値ソースであるテーブルに新しい値を自動で追加→リストの編集フォームを開く→追加されたレコードまでカーソルを持っていく(追加情報を入力する為)。 という動作を行いたいのです。 Private Sub Vendor_Name_NotInList(NewData As String, Response As Integer) Dim rc As Integer rc = MsgBox(NewData & " is not currently in the database. Would you like to add it?", vbQuestion + vbYesNo, "Vendor Info not available") Select Case rc Case vbYes Response = acDataErrAdded DoCmd.SetWarnings False DoCmd.RunSQL "INSERT INTO Vendors (Vendor_Name) SELECT """ & NewData & """;" DoCmd.SetWarnings True DoCmd.OpenForm "Vendors_Editor", acFormDS Forms("Vendors_Editor").Recordset.FindFirst "Vendor_Name = '" & NewData & "'" Case vbNo Response = 0 End Sub と書いていますが、 DoCmd.RunSQL "INSERT INTO Vendors (Vendor_Name) SELECT """ & NewData & """;" のところで、 Run-Time Error 3134 - Syntax Error in Insert Into Statement というエラーメッセージが出て、同時に、 The text you entered isn't an item in the list. Do you want to edit the items in the list? というメッセージが出ます。(SetWarnings Falseが効かない?) 原因が分からないので教えて頂けると幸いです。
- 締切済み
- その他MS Office製品
- 複数フィールドへ時間帯別のデータ入力
複数のフィールドに、複数行のデータを反映させようとしています。 一応、狙った通りの動作はしているのですが、動いているから良い…… というレベルにもなっていないので、思い切って質問いたしました。 T_MAINにフィールド[受付日][受付時間][キュウリ][トマト][ナス] があり、フォームには、下記のような入力フィールドがあります。 これを登録ボタンクリックで、時間帯別でT_MAINへ複数行を一度に 反映させるには、どのようにしたら良いでしょうか。 どうか、よろしくお願いいたします。 フォーム ======================================== 受付日 受付時間|キュウリ|トマト|ナス 9 | 1| 5| 8 10 | 4| 2| 6 11 12 ・ ・ ・ [登録ボタン] ======================================== 登録ボタンクリック時に実行されるVBAです。 Dim SQL1 As String SQL1 = "INSERT INTO T_MAIN(受付日,受付時間,キュウリ,トマト,ナス)" _ & " values(テキスト1,テキスト2,テキスト3,テキスト4,テキスト5)" DoCmd.RunSQL SQL1 Dim SQL10 As String SQL2 = "INSERT INTO T_MAIN(受付日,受付時間,キュウリ,トマト,ナス)" _ & " values(テキスト6,テキスト7,テキスト8,テキスト9,テキスト10)" DoCmd.RunSQL SQL2
- ベストアンサー
- その他MS Office製品
- レコード新規・編集時に自動で作成・編集日時を追加
MYSQLにて(PHPMYADMIN上でテスト) ●レコード挿入(追加・新規作成)時は、 「Pt_create」と「Pt_update」の2つのフィールドに自動で現在時刻を作成 ●レコード編集時は 「Pt_update」のみ自動で現在時刻を上書き というありがちで申し訳ないですが、実行したいです。 現在調べたところ、 一番スマートでない方法は、 ******************************* Pt_createのほうに、種別:DATETIME Pt_updateのほうに、種別:DATETIME PHP側にて、$today = date("Y-m-d H:i:s");を取得して、 新規作成時・・・ $sql = INSERT INTO (`Pt_create`,`Pt_update`) VALUES ('".$today."','".$today."')・・ 編集時・・・ $sql = UPDATE SET Pt_update= '".$today."'・・ ******************************* ですよね? できたらSQLのほうで自動でやれるだけやってほしいのですが、 今は、 ******************************* Pt_createのほうに、種別:DATETIME Pt_updateのほうに、種別:TIMESTAMP、属性:on update CURRENT_TIMESTAMP PHP側にて、$today = date("Y-m-d H:i:s");を取得して、 新規作成時・・・ $sql = INSERT INTO (`Pt_create`) VALUES ('".$today."')・・ ******************************* ここまで省略できました。 これが限界でしょうか。 種別:TIMESTAMPを2つ設置したらうまく動作しなかったもので。
- ベストアンサー
- MySQL
お礼
ご回答ありがとうございました。 DoCmd.SetWarnings Falseで 問題は解決しました。