Excel VBA:選択セルをCSV形式とテキスト形式でファイル保存する

FileFormatでCSV形式とテキスト形式を指定し、ファイル保存するVBAを掲載しています。




Homeに戻る > Excel セルのTipsへ

Excel VBAで選択範囲のセルをファイル保存するには、選択範囲を新しいシートにコピーし、その後新しいブックに移動し、そのブックを保存します。

CSV形式で保存するのは、ActiveWorkbook.SaveAs Filename:=ファイル名, FileFormat:=xlCSV と指定します。

テキスト形式で保存するのは、ActiveWorkbook.SaveAs Filename:="c:\test.txt",FileFormat:=xlCurrentPlatformText と指定します。

CSV形に関連する「CSVファイルの読み込みと変換しインポートする方法」も掲載していますので、参考にしてください。




選択セルをCSV形式とテキスト形式でファイル保存するVBA

■VBAの実行順

  1. 新しいシートを追加し、選択範囲をコピーする
  2. 新しいブックを作成し、そこにコピーしたシートを移動する
  3. 上書きのメッセージを表示させないように設定
  4. CSV形式でファイル保存する
  5. テキスト形式でファイル保存する
  6. 保存せずに新しいブックを閉じる
  7. メッセージ表示をせせないようにした設定を戻す

Excelシート画面

■保存したい範囲を選択し、「選択範囲をテキスト保存」ボタンをクリックします。

セルを選択したシート

■完成したCSVファイルをメモ帳で表示させた画面

メモ帳で表示したCSVファイル

■完成したテキストファイルをメモ帳で表示させた画面

メモ帳で表示したテキストファイル


Excel VBA実行コード

Option Explicit

Private Sub CommandButton1_Click()
    Dim sname As String
    Dim rng As String
        
    '選択範囲のセルアドレス
    rng = Selection.Address
    'シート名
    sname = ActiveSheet.Name
    '新しいシートを追加し、選択範囲をコピー
    Worksheets(sname).Range(rng).Copy Destination:=Worksheets.Add.Range("A1")
    '新しいブックを作成し、そこにシートを移動する
    ActiveSheet.Move
    '上書きのメッセージを表示させない
    Application.DisplayAlerts = False
    'CSV形式でファイル保存
    ActiveWorkbook.SaveAs Filename:="c:\test.csv", FileFormat:=xlCSV
    'テキスト形式でファイル保存
    ActiveWorkbook.SaveAs Filename:="c:\test.txt", FileFormat:=xlCurrentPlatformText
    '保存せずに閉じる
    ActiveWorkbook.Close savechanges:=False
    'メッセージ表示を戻す
    Application.DisplayAlerts = True
    
End Sub



Homeに戻る > Excel セルのTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved