Page 444 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼エクセルデータをタブ区切りのCSV形式のテキストファイルとして出力する際に・・・ きちゅ 02/12/10(火) 11:39 ┣追加 きちゅ 02/12/10(火) 12:04 ┗Re:エクセルデータをタブ区切りのCSV形式のテキストファイルとして出力する際に・・・ Jaka 02/12/10(火) 12:39 ┗Re:エクセルデータをタブ区切りのCSV形式のテキストファイルとして出力する際に・・・ きちゅ 02/12/10(火) 13:23 ┗訂正です。すいません! きちゅ 02/12/10(火) 13:26 ┗Re:訂正です。すいません! Jaka 02/12/10(火) 15:43 ┗Re:訂正です。すいません! きちゅ 02/12/10(火) 16:45 ─────────────────────────────────────── ■題名 : エクセルデータをタブ区切りのCSV形式のテキストファイルとして出力する際に・・・ ■名前 : きちゅ ■日付 : 02/12/10(火) 11:39 -------------------------------------------------------------------------
エクセルに記されたデータを取り込み時、タブ区切りのCSV形式のテキストファイルとして出力したいです。 その際、必ず一行目に定数で「ENTRY」という文字列を入れることはできますでしょうか? サンプルとしてマクロコードを教えてください。お願いします。 |
先ほどの一行目の定数で入れたい「ENTRY」ですが、 変更があります。 定数は「2002年度 ENTRY 承認」とタブ区切りで一行目に入れたい次第です。 お手数ですがお願いします。 |
こんにちは。 >タブ区切りのCSV形式のテキストファイルとして出力したいです。 マクロ記録を試して見て下さい。 >その際、必ず一行目に定数で「ENTRY」という文字列を入れることはできますでしょうか? 主力する直前に、1行目に1行挿入して文字を入れ、出力後に挿入した行を消す。 これもマクロ記録で、できると思います。 |
Jakaさんこんにちは。 現在の状態として、データをいれたエクセルファイル(シート1)とは別シート(iシート)に もう一つ開発用のシートがありまして、そちらにデータをコピーしてからカンマ区切りのテキストファイルを ボタン押すことになってます。 そこで、マクロの記録により、 Rows("1:1").Select Selection.Insert Shift:=xlDown ActiveCell.FormulaR1C1 = "挿入文字" を下記のソースに追加すると、 開発用の(iシート)の方に、「挿入文字」という文字列が追加されてしまうことになってしまいます。 それは避けたいです。 (シート1)、(iシート)ともにデータは変えずに、テキストファイルに吐き出した時に、 「2002年度 ENTRY 承認」という文字列が一行目に追加されているということをやりたいです。 御力添えお願いします。 Public SAVE_FILE As String '保存ファイル Public READ_FILE As String '読込ファイル Sub IPシート() Dim Input_Name As Variant Sheets("iシート").Select SAVE_FILE = "D:\iシート.txt" '保存ファイル名取得 Input_Name = Application.GetSaveAsFilename(SAVE_FILE, _ fileFilter:="テキスト(タブ区切り) (*.txt),*.txt") 'ファイル名が入力されたら、ファイル保存 If Input_Name <> False Then SAVE_FILE = Input_Name ActiveWorkbook.SaveAs Filename:=SAVE_FILE, FileFormat:=xlText, _ CreateBackup:=False ' ActiveWorkbook.Close 'ファイルクローズ End If Sheets("シート1").Select End Sub |
テキストファイルを ボタン押すことになってます。 ↓訂正 テキストファイルをボタン押すことにより、作成することになっています。 |
途中の行に挿入する方法が解らなかったんで、作りなおしにする方法にしました。 下記コードを作った後に書いて見て下さい。 Sub rtrt() Dim DT(), FL As String, N As Long, i As Long N = 1 ReDim Preserve DT(1 To N) DT(N) = "挿入したい文字" FL = "作ったテキストファイルフルパス名" Open FL For Input As #1 Do Until EOF(1) N = N + 1 ReDim Preserve DT(1 To N) Line Input #1, DT(N) Loop Close #1 Open FL For Output As #1 For i = 1 To N Print #1, DT(i) Next Close #1 End Sub |
ありがとうございます。 少し試してみます。 わからなかったら、また戻ってきます。 宜しくお願い致します。 |