VBA从以工作簿命名的工作表中创建CSV

问题描述 投票:0回答:1

我正在尝试从我的工作簿中的工作表中创建一个新的CSV文件,该文件以原始工作簿的名称命名(减去标题中的几个单词)。目前,我无法弄清楚如何以工作簿命名,更不用说从工作簿标题中减去几句话了。要澄清:工作簿名称为“ abc def”,希望将新的CSV文件命名为“ abc”

    Sub SaveActiveSheet_CSV ()
    Dim myCSVFileName As String

    Application.DisplayAlerts = False
    myCSVFileName = ThisWorkbook.Path & "abcd"
    ThisWorkbook.Sheets("Sheet1").Copy

    ActiveWorkbook.SaveAs Filename:=MyCSVFileName, FileFormat:=xlCSV, CreateBackup:=False
    ActiveWorkbook.Close

    Application.DisplayAlerts = True

    End Sub

任何帮助将不胜感激

excel vba csv naming
1个回答
0
投票

如果按照您的建议,如果您当前的文件名为“ abc def”,则可以使用Split()获取新文件的名称。因此,您将同时需要.Path.FullName属性。

因此:

Dim myCSVFileName As String

myCSVFileName = ThisWorkbook.Path & "\" & Split(ThisWorkbook.Name, " ")(0) & ".csv"

或替代地:

myCSVFileName = Split(ThisWorkbook.FullName, " ")(0) & ".csv"
© www.soinside.com 2019 - 2024. All rights reserved.