Excel VBA質問箱 IV

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

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


19196 / 76734 ←次へ | 前へ→

【62974】Re:VBAでCSVを連結してをXLSで保存
発言  kanabun  - 09/9/28(月) 16:55 -

引用なし
パスワード
   ▼YUKI さん:
こんにちは。

>これは本を読みながら自分で作ったのです↓

本だけから記述したにしては
インデントもついているし、
よくまとまっていますね(^^

ただ、
>Sub CSV()
には、ある重要な処理が抜けています。
勝手ながら、処理過程をまとめてみますと、

'-------------------------------------
  ▼(1)
FileDialogを使って複数CSVファイルを選択します。
  ▼(2)
FSOを使って各CSVファイルを ReadAll し、
テキストを連結します。
  fStr = fStr & vbCrLf & .ReadAll
         ↑この改行は不要です
  ▼(3)
結合したテキストを 拡張子*.xls の名前でファイルに
書き出します。
>  With fs.CreateTextFile(fName)
>    .Write fStr
>    .Close
>  End With
  ▼(4)
いまアクティブになっているBookを名前をつけて保存します。
>ActiveWorkbook.SaveAs FileFormat:=xlNormal
'-------------------------------------

とまぁ、こんな過程かと思うのですが、
問題というのは、
▼(3)
 結合したテキストを 拡張子*.xls の名前で保存して
いることです。
ワークシート上に複数テキストファイルをまとめて、
そのBookを保存してないので、
▼(2)〜▼(3) のプロセスで ディスク上に 結合したテキスト
ファイルは作成されますが、
そのことと、
▼(4) の 現在Bookの別名保存↓
>ActiveWorkbook.SaveAs FileFormat:=xlNormal
とは、どこにも関連がありません。

とりあえず、
作成されたコードを活かして、Book(*.xls)として保存する
ためには、
▼(1) ファイルの選択 (変更なし)
▼(2) テキストの結合  (変更なし)
▼(3) 名前を付けて(拡張子*.CSV)テキストの出力
▼(4) 出力した結合後のCSVファイルを
   [データ]-[外部データの取り込み]
    -[テキストファイルのインポート]
  を使って、新規ワークシート上にインポートする。
▼(5) インポートしたシートのあるBookを
  XLS形式で「名前をつけて」保存する。

としなければなりません。

さいわい、
▼(4) の部分についてはすでにマクロ記録がありますから、
上の処理過程を記述するコード(材料)はほとんど出揃って
います。
あと少しですので、コードの修正に精進してください。
5 hits

【62965】VBAでCSVを連結してをXLSで保存 YUKI 09/9/28(月) 0:52 質問
【62967】Re:VBAでCSVを連結してをXLSで保存 kanabun 09/9/28(月) 9:02 発言
【62968】Re:VBAでCSVを連結してをXLSで保存 kanabun 09/9/28(月) 9:37 発言
【62973】Re:VBAでCSVを連結してをXLSで保存 YUKI 09/9/28(月) 15:37 発言
【62974】Re:VBAでCSVを連結してをXLSで保存 kanabun 09/9/28(月) 16:55 発言
【62975】Re:VBAでCSVを連結してをXLSで保存 kanabun 09/9/28(月) 17:45 発言
【62976】Re:VBAでCSVを連結してをXLSで保存 YUKI 09/9/28(月) 18:35 お礼
【62977】Re:VBAでCSVを連結してをXLSで保存 kanabun 09/9/28(月) 18:49 発言
【62978】Re:VBAでCSVを連結してをXLSで保存 YUKI 09/9/28(月) 18:53 お礼
【62980】Re:VBAでCSVを連結してをXLSで保存 kanabun 09/9/29(火) 0:11 発言
【62987】Re:VBAでCSVを連結してをXLSで保存 YUKI 09/9/29(火) 18:53 お礼
【63004】Re:VBAでCSVを連結してをXLSで保存 YUKI 09/9/30(水) 17:48 質問
【63006】Re:VBAでCSVを連結してをXLSで保存 kanabun 09/9/30(水) 19:32 発言
【63007】Re:VBAでCSVを連結してをXLSで保存 kanabun 09/9/30(水) 19:35 発言
【63008】Re:VBAでCSVを連結してをXLSで保存 kanabun 09/9/30(水) 19:52 発言
【63047】Re:VBAでCSVを連結してをXLSで保存 YUKI 09/10/4(日) 6:04 お礼

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