2017-04-12 33 views
0

私の要件は、上記のタスクの下で実行する必要のあるデータとボタンを含むシートを持っていることです。保存ダイアログボックスを使用してファイル名で新しいシートを作成し、CSV形式で保存するVBA

タスクは、ボタンをクリックするとファイル名と場所をcsv形式で新しいシートに保存する必要があり、アクティブなシートのデータをコピーして新しいシートと名前に貼り付けなければならないということです新しいシートは、ファイルがCSV形式で保存するために与えられた名前でなければなりません。

誰でもこれについてお手伝いできますか?

+0

このタイプの質問は何度も回答されています。 – Sorceri

+0

@ Sorceri –

+0

があれば私にリンクを送ることができますそれは私があなたのために検索をしているので、あなたはすでにあなたが検索を行っていれば、答えがあったということです。シートCSVを保存すると、文字通り最初のヒットがあなたに答えを与えます。 – Sorceri

答えて

1

これはトリックを行い、味を編集する必要があります。マクロを新しいモジュールに保存し、[開発者]タブの[挿入]ボタンを追加します。このマクロにボタンを割り当てます。

Sub SaveWorksheetsAsCsv() 

Dim WS As Excel.Worksheet 
Dim SaveToDirectory As String 

Dim CurrentWorkbook As String 
Dim CurrentFormat As Long 

CurrentWorkbook = ThisWorkbook.FullName 
CurrentFormat = ThisWorkbook.FileFormat 
' Store current details for the workbook 

'Change the path, must end with \ 
SaveToDirectory = "C:\Users\username\Documents\test\" 
For Each WS In ThisWorkbook.Worksheets 
    Sheets(WS.Name).Copy 
    ActiveWorkbook.SaveAs Filename:=SaveToDirectory & ThisWorkbook.Name & "-" & WS.Name & ".csv", FileFormat:=xlCSV 
    ActiveWorkbook.Close savechanges:=False 
    ThisWorkbook.Activate 
Next 
'edit/remove the for loop to suit 
End Sub 

クレジットの対象となるクレジット。この回答からの適合: Saving excel worksheet to CSV files with filename+worksheet name using VB

関連する問題