いつもお世話になっております。
以前、この欄で質問させて頂いたCSVデータ変換の件については随分助かり、ありがとうございました。
このたび、Access2000のデータを、テキストファイル(タブによる区切り)に変換(明細ごとの区切りは改行文字を使用)する必要があり、下記のような記述を致しましたが、どうしても、「カンマ区切り」にしかなりません。
インターネットで調べると、テキスト(タブ区切り)の拡張子は「.txt」と説明されているのですが、何か記述が間違っているのでしょうか?
宜しくお願い致します。
(追伸)将来、必要になるかも知れないので、テキスト(スペース区切り)の記述についてもお願いできれば、と思います。
-- 記述内容 ---------------------------------------------------
Dim adoRs As New ADODB.Recordset
Dim strsql As String
Dim strFile As String
Dim 番号 As Long
strsql = "SELECT"
For 番号 = 1 To 34
If 番号 > 1 Then strsql = strsql & ","
strsql = strsql & "フィールド" & CStr(番号)
Next
'strsql = strsql & "FROM WT売掛管理表 ORDER BY フィールド1"
strsql = "SELECT フィールド1,フィールド2,フィールド3,フィールド4,フィールド5,フィールド6,フィールド7,フィールド8,フィールド9,フィールド10,フィールド11,フィールド12,フィールド13,フィールド14,フィールド15,フィールド16,フィールド17,フィールド18,フィールド19,フィールド20,フィールド21,フィールド22,フィールド23,フィールド24,フィールド25,フィールド26,フィールド27,フィールド28,フィールド29,フィールド30,フィールド31,フィールド32,フィールド33,フィールド34 " & _
"FROM WT売掛管理表 ORDER BY フィールド1"
adoRs.Open strsql, CurrentProject.Connection
strFile = "C:\データフォルダ\変換データ.txt"
Open strFile For Output Access Write As #1
Do Until adoRs.EOF
For 番号 = 0 To 32
Write #1, CStr(adoRs.Fields(番号).Value),
Next
Write #1, CStr(adoRs.Fields(番号).Value)
adoRs.MoveNext
Loop
adoRs.Close
Close #1
MsgBox "データ変換処理が終了しました。", vbInformation
Exit Sub
-----------------------------------------------------
No.1ベストアンサー
- 回答日時:
For 番号 = 0 To 32
Write #1, CStr(adoRs.Fields(番号).Value),
Next
Write #1, CStr(adoRs.Fields(番号).Value)
の部分を
strData = ""
For 番号 = 0 To 32
strData = strData & CStr(adoRs.Fields(番号).Value) & vbTab
Next
strData = strData & CStr(adoRs.Fields(番号).Value)
Write #1 strData
のようにするとよいと思います。
この回答への補足
返事が遅くなり、申し訳ありませんでした。
早速、ご回答の通りに実行してみたところ、イメージ的には希望の形になっているように思えます。ありがとうございます。
ただ、明細データが9行のもので実験したところ、
”1行目のフィールド1 フィールド2 ・・・・・・・・フィールド34”
”1行目のフィールド1 フィールド2 ・・・・・・・・フィールド34 2行目のフィールド1 フィールド2 ・・・・・・・・フィールド34”
・
・
・
”1行目のフィールド1 フィールド2 ・・・・・・・・フィールド34 2行目のフィールド1 フィールド2 ・・・・・・・・フィールド34 ・・・・・・ 9行目のフィールド1 フィールド2 ・・・・・・・・フィールド34”
というようにだぶってファイルが作られます。
最後に作られている「”1行目のフィールド1 フィールド2 ・・・・・・・・フィールド34 2行目のフィールド1 フィールド2 ・・・・・・・・フィールド34 ・・・・・・ 9行目のフィールド1 フィールド2 ・・・・・・・・フィールド34”」の内容で、なおかつ、1行目~9行目のデータが、明細ごとに改行文字で区切られていれば良いのですが(エクセルのタブ区切り型式と同様のもの)、そのようには出来るでしょうか?
(例)
1行目のフィールド1 フィールド2 ・・・・・・・・フィールド34
2行目のフィールド1 フィールド2 ・・・・・・・・フィールド34
・
・
・
9行目のフィールド1 フィールド2 ・・・・・・・・フィールド34
なお、このように変換する目的は、他のコンピュータソフトで利用するためだそうです。
どうぞ、宜しくお願い致します。
No.2
- 回答日時:
strData = ""
が
Do Until adoRs.EOF
より前にあるのではないでしょうか。
Do Until adoRs.EOF
の直後に
strData = ""
を置いてみてください。
あと、Write の前に、
strData = strData & vbCrLf
が必要ではないかと思います。
前略
1週間程出張していたため、返事が出来ず、申し訳ありませんでした。
早速帰京してご指示の通りやってみましたら、うまく出来ました。
大変ありがとうございました。
今後とも宜しくお願い申し上げます。
草々
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- Access(アクセス) Accessテキストボックス内に2つのフィールドの値を比較して大きい方の値を表示させる方法 1 2022/09/09 10:50
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- Access(アクセス) Accessクエリで年月フィールドを年のみで抽出する方法について 2 2022/08/29 18:10
- Java java final 1 2022/06/10 22:49
- その他(コンピューター・テクノロジー) 【Tableau Desktop】文字列から8桁の数字を日付型(yyyyMMdd)として取得 1 2023/07/31 10:17
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラム言語について。
-
C#とC++について。
-
CLispのloop内の挙動について
-
interface 2021年5月号 P46
-
VBA 電話番号の正規表現について
-
VBAでパワーシェルを実行したい...
-
vba クリップボードクリアにつ...
-
ImageMagickでgif画像の一部が...
-
Windowsのアプリ開発ってなんの...
-
プログラミングのPythonのnoteb...
-
pythonで複数画像からgifを作る...
-
ExcelVBAでFormulaR1C1を列範囲...
-
初心者powershellのPS1ファイル...
-
Google ColaboでGUI作成
-
小学1年生の子です。塾に行かせ...
-
そのまま使っただけなのに・・...
-
プログラマーと学歴の関係性に...
-
Pythonでgif画像が上手く作れない
-
windowsでテキストファイルの各...
-
プログラミング、アーキテクチ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラミング
-
小学1年生の子です。塾に行かせ...
-
vba クリップボードクリアにつ...
-
プログラマーと学歴の関係性に...
-
Webサイト内に埋め込んだmp4動...
-
正規表現で複数マッチ条件で悩...
-
windowsでテキストファイルの各...
-
楽しくて最高のプログラミング...
-
プログラミング ソースコード
-
Pythonって何を意識した言語な...
-
プログラミングを教えたいです...
-
pythonで複数画像からgifを作る...
-
pythonにてseleniumを使うも、...
-
Pythonでgif画像が上手く作れない
-
Google ColaboでGUI作成
-
テキストファイルのファイル名...
-
プログラミング、アーキテクチ...
-
そのまま使っただけなのに・・...
-
このURLで広告を出しているのは...
-
chatGPTで次々と質問をしていく...
おすすめ情報