- ベストアンサー
命令文の分割方法と時刻・日付項目の扱いについて
- 質問者は、長い命令文を画面内に表示できるように分割したいと考えています。
- また、時刻項目と日付項目が文字列または分数式として扱われることについても疑問を持っています。
- 質問者は、具体的な分割方法や時刻・日付項目の扱い方についてアドバイスを求めています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
> SQL文 = SQL文 & """" & 利用者 & """," & 日付 & "," & 身体単位 & "," & 生活単位 & "," & 開始時刻 ここは、 「SQL文 = SQL文 & "利用者,日付,身体単位,生活単位,開始時刻"」 でよいはずです。 「利用者」等が文字列型なのに対し、「日付」は日付型だということで 「ダブルクォーテーション(")では括らない」と思われたのだと思いますが、 これだと「日付」コントロールの値が参照されるため、ご質問のようなエラーに なったものと思います。 (ご質問中の形だと、「~values (利用者,11:00:00,~」といった形のSQL文に なってしまいます) 試しに、SQL実行前に「MsgBox SQL文」という命令を入れておけば、SQL文が正しく 作成されているかどうか確認できます。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ また、改行の方法としては、ご質問中のように分割するほかに、 「SQL文 = "insert into 介護メモ (利用者,介護日,身体単位,生活単位,開始時刻,年月)" _ & " values (利用者 , 日付 , 身体単位 , 生活単位 , 開始時刻,年月)"」 というように、「_」(アンダーバー)を使って改行を挿入する方法もありますので、 参考までに。 (文字列とアンダーバーの間には、「 」(スペース)が必要) なお、改行挿入時には、元の文にあったスペースを入れ忘れがちですが(私が(汗))、 以下のような手順を踏むと、間違いにくくなるかと思います; 「"~年月) values ~"」(分割前のSQL文) →「"~年月)"" values ~"」(この時点ではエラー発生) →「"~年月)" & " values ~"」(SQL文の分割終了) →「"~年月)" _& " values ~"」(この時点ではエラー発生) →「"~年月)" _ & " values ~"」(改行の挿入終了) *改行後の「&」の前には、スペースやTabが任意の数だけ 入れられますので、見やすいように調整できます。
お礼
ご回答感謝します 最初仰るとおり「SQL文 = SQL文 & "利用者,日付,身体単位,生活単位,開始時刻"」 としたのですが日付以下はテキストデータと処理してくれますが利用者だけは文字列? このままのレコードに書き込まれました。丁寧に見直せば間違いに気づいたかも 改行は _と&で9行に分解できました。 「」はACCESS2000で不用のようです。おかげで見直し訂正が楽になりました。