こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

EXCEL→CSV形式で別ファイルに保存

EXCELデータ内のある1つのシートのデータをそのまま別ファイル(CSV)に保存したいのですがうまくいかないので教えてください。
本を見ながらこのようなマクロを作ったところ、EXCEL(○○.xls)の指定したシート(keihi)のみをCSV形式で別フォルダ(C:\経費振替)に保存することができたんですが、
元のEXCELも、ファイル名称・形式がCSV(○○.xls→keihi.csv)に変わってしまいます。
エクセルのファイル名、形式は変えずにできる方法ってありますか??
Sub データはきだし()
Dim Ret As String
Dim Res As Integer
Dim FolderName As String
Set WK1 = Worksheets("1 依頼書")
Set WK4 = Worksheets("keihi")
FolderName = "C:\経費振替"
Ret = Dir(FolderName, 16)

If Ret = "" Then
Res = MsgBox("DATA保管用フォルダを作成します。", vbYesNo)
If Res = vbYes Then
MkDir FolderName
End If
End If

'
Dim Res2 As Integer
Res2 = MsgBox("DATAを作成します。", vbYesNo)
WK4.Select
If Res2 = vbYes Then
With WK4
.SaveAs Filename:=FolderName & "\keihi", FileFormat:=xlCSV ←多分ココが何か間違ってるのだと思うんですが。
End With

投稿日時 - 2006-02-17 16:21:27

QNo.1972570

すぐに回答ほしいです

質問者が選んだベストアンサー

こんばんは。
いくつかやり方はあるのですが、もっとも簡単なのは、たぶん、こんな所でしょうね。
それと、一応、出力ファイル名は、明示的に、keihi.csv  としました。

Dim Res2 As Integer
Res2 = MsgBox("DATAを作成します。", vbYesNo)
WK4.Select
If Res2 = vbYes Then
WK4.Copy
Application.DisplayAlerts = False '上書きダイアログ無視
ActiveWorkbook.SaveAs _
  Filename:=FolderName & "\keihi.csv", FileFormat:=xlCSV
ActiveWorkbook.Close False
Application.DisplayAlerts = True
End If

投稿日時 - 2006-02-17 20:52:48

お礼

ありがとうございます!!
このとおりにしてみたら、思い通りのものができました。

投稿日時 - 2006-02-18 08:42:45

ANo.2

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(3)

#1です。
Cドライブ直下であれば
ActiveWorkbook.SaveAs Filename:="C:\" & "TEST",FileFormat:=xlCSV
でOKだと思いますよ。

投稿日時 - 2006-02-17 23:47:14

お礼

ありがとうございます。うまくできました!!

投稿日時 - 2006-02-18 08:41:55

これでできませんか?
With WK4
.Copy
ActiveWorkbook.SaveAs Filename:=FolderName & "\keihi", FileFormat:=xlCSV
End With

私が試したのはこちら・・・。
With Sheets("Sheet1")
.Copy
ActiveWorkbook.SaveAs Filename:=CreateObject("WScript.Shell").SpecialFolders("desktop") & "\" & "TEST", FileFormat:=xlCSV
End With
通常シートをコピーする時は別のシートの前とか後ろとか指定しますが、指定
をしない状態だとコピーしたシートのみの新しいブックが作成されます。
要はその新しく作成されたブックをCSV形式で保存します。

投稿日時 - 2006-02-17 16:39:50

補足

ありがとうございます!!
うまくできました(^^)
でも、下の方のをそのままコピーして使ったら、デスクトップに保存されるんですね。
これをcドライブ直下にいれたいんですが、その場合はどうすればいいですか??

投稿日時 - 2006-02-17 17:25:14

あなたにオススメの質問