Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


47998 / 76732 ←次へ | 前へ→

【33674】Re:「文字列''が終了していません。」というエラー
発言  ichinose  - 06/1/17(火) 21:48 -

引用なし
パスワード
   >データが40件しか入れていないのに41件目のデータを読もうとしているので、
>ユーザ定義型の中は 空文字ばかりになっています。
これがヒントかも・・・。


>>>>
>>>>>------------------------------------------------------------------
>>>>>
>>>>>'SQLServerとの接続は既に確立された状態
>>>>>con.BeginTrans    
>>>>>   
>>>>>Dim strDataFile as string
>>>>>strDataFile = "D:\LOG.txt"
>>>>>Dim pFileNo As Integer
>>>>>pFileNo = FreeFile
>>>>>'ファイルのオープン
>>>>>Open strDataFile For Random As #pFileNo Len = 40
>>>>'何故、テキストファイル(テキストファイルですよね?)を
>>>>'ランダムモードでオープンしているのですか?
>>>>'通常、テキストファイルには Cr+lfと言うコードが一行の最後に
>>>>'入っています。これをも読み込むという計算の上でのことですか?
>>>>'あるいは、Cr+lfが元々入っていないファイルなのですか?
>>>CrLfは入っています。
>>>読み込むテキストファイルは固定長で、一行が2000字以上になることもあります。
>>>何故ランダムモードにしたのかはちょっと・・ 忘れました。(--;;)
>>>(テキストファイルは読み込みだけで、書き込み処理はありません。)
>>>
>>>
  Do While Loc(pFileNo) * 40 < lof(pFileNo)
'これで試してみて下さい      
>>>>>
>>>>> Get #pFileNo, , mKuni_kani
>>>>'           ↑この変数と
>>>>'下のSQL文字列の相関はどうなっていますか?
>>>
>>>ちょっと 省略してしまったのですが、読み込むテキストファイルが固定長なので
>>>ユーザ定義関数を定義しました。
>>>定義の中を表示させてみて、各値は正確にテキストファイルから読み込むことが出来ています。
>>>ユーザ定義関数を使って読み込むデータを定義しています。 
>>>
>>>    
>>>>> 'SQL文生成
>>>>> Dim sql as string
>>>>> sql = "INSERT INTO (テーブル名) VALUES ((テキストファイルからとったデータ),(テキストファイルからとったデータ),(テキストファイルからとったデータ))"
>>>>実際のSQLは↑ではないですよね?
>>>>これで40行目までは正しくデータが入っているのですか?
>>>入れることができます。
>>>トランザクションを一件づづコミットさせると、40件のデータが正しく、テーブルに格納されます。
>>'となると、41行目のデータが本当に正しくユーザー定義型に
>>'取り込まれているかというこですが・・・。
>>'特にCrlfは、見えませんから・・・
>>'ここを再度確認してみて下さい。
>>'環境がないのでこちらでは確認ができません
>>'気になったのはそんなところですが・・・。
>
>データが40件しか入れていないのに41件目のデータを読もうとしているので、
>ユーザ定義型の中は 空文字ばかりになっています。
>SQL文はこんな感じ
>↓
>INSERT INTO (テーブル名) VALUES ('','','')
>
>テーブルそのものがNULL可になっているので クエリアナライザを使用するとこの空ばかりのINSERT文でもINSERTできます。
>クエリアナライザだとINSERT出来るのに何故落ちてしまうのか、何故41行目のデータを読んでいるのかが(実際には空ですが) 不思議です。

0 hits

【33658】「文字列''が終了していません。」というエラー mon 06/1/17(火) 19:12 質問
【33661】Re:「文字列''が終了していません。」とい... ichinose 06/1/17(火) 19:59 発言
【33665】Re:「文字列''が終了していません。」とい... mon 06/1/17(火) 20:11 お礼
【33668】Re:「文字列''が終了していません。」とい... ichinose 06/1/17(火) 20:46 発言
【33669】Re:「文字列''が終了していません。」とい... mon 06/1/17(火) 20:58 発言
【33674】Re:「文字列''が終了していません。」とい... ichinose 06/1/17(火) 21:48 発言
【33746】Re:「文字列''が終了していません。」とい... mon 06/1/19(木) 20:28 発言
【33751】Re:「文字列''が終了していません。」とい... ichinose 06/1/19(木) 21:26 発言
【33756】Re:「文字列''が終了していません。」とい... ichinose 06/1/19(木) 21:55 発言
【33844】Re:「文字列''が終了していません。」とい... mon 06/1/22(日) 14:02 お礼

47998 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free