2017-07-03 7 views
0

私はVBAで新しく、このトピックについていくつかの研究をしようとしましたが、運はありません。私は複数のシートを持つワークブックを持っていますが、新しいファイルを開くことなくCSVファイルとしてシート6を特定の場所に保存したいだけです。ボタンのようなものにリンクされているVBAを使って、どうすればいいですか?おかげCSVファイルとして単一シートを保存する

+0

何を意味するのですか? 'Sheet6.SaveAs" foo.csv "、xlCSV'を使うことができますが、これはあなたの現在編集された文書になり、古い文書は閉じます。あなたは元のブックを開いたままにしておきたいですか? –

+0

はい1枚のシートをCSVファイルとして保存してデータベースにアップロードしようとしています。しかし、私は元のワークブックを閉じたいとは思わない。私は本2をCSVファイルとして開こうとはしません。私は同じ名前で保存するが、同じようにしたい - CSV – Bsmith

+0

[This](https://stackoverflow.com/questions/44783923/excel-macro-multiple-sheets-to-csv/44792295#44792295)が適用されているマルチシートに。あなたは1枚だけうまく働くことができます。 –

答えて

1

は、ボタンを作成し、このマクロにリンク:あなたは*「新しいファイルを開かずに」*によって

Sub Sheet6ToCSV() 
    Application.ScreenUpdating = False: Application.EnableEvents = False: Application.DisplayAlerts = False 
    On Error GoTo Cleanup 

    Dim fold As String: fold = "C:\SO\" 
    Dim fName As String: fName = "MySheet6" 

    Worksheets("Sheet6").Copy 
    With ActiveWorkbook 
    .SaveAs fold & fName 
    .Close False 
    End With 

Cleanup: 
    Application.ScreenUpdating = True: Application.EnableEvents = True: Application.DisplayAlerts = True 
End Sub 
関連する問題