【问题标题】:how to rename sheet name different from file name如何重命名与文件名不同的工作表名称
【发布时间】:2019-12-28 22:04:21
【问题描述】:

我有一些 vba 来创建一个工作表名称为“SheetName”的新工作簿,然后将数据传输到新工作表并以文件名另存为并保存为 CSV 格式 文件名复制了我之前声明的表单名称,这是我不想要的。

Private Sub TransferData()

'---Submit Button Code - Transfers data to new workbook, renames and saves to folder.

Dim SheetName As String
Dim SavePath As String
Dim FileName As String
SheetName = "IATData"
SavePath = "savedfolderpath"
FileName = IAT.SaveDateBox.Value & IAT.SaveTimeBox.Value & IAT.SaveAssessorBRIDBox & IAT.BRIDBox


'Create new workbook for saved CSV
With Application
    .SheetsInNewWorkbook = 1
    .Workbooks.Add
    .Sheets(1).Name = SheetName
End With

'Turn off Auto-Calculate
Application.Calculation = xlCalculationManual
'Turn off Alert Displays
Application.DisplayAlerts = False

'Determine Empty Row
emptyRow = WorksheetFunction.CountA(Range("A:A")) + 1

'Transfer the data to the master
'---Front Page---
Cells(emptyRow, 1).Value = IAT.BRIDBox.Value
Cells(emptyRow, 2).Value = IAT.AgentNameBox.Value

'Save new workbook etc.
ActiveWorkbook.SaveAs FileName:=SavePath & FileName, FileFormat:=xlCSV, CreateBackup:=False
ActiveWorkbook.Close
Application.DisplayAlerts = True
Workbooks("IAT Form.xlsm").Activate
MsgBox "Details sent to data folder under: " & FileName

End Sub

希望新工作簿具有工作表名称“IATData”和由上述单元格引用组成的文件名,但工作表仍被命名为文件名。

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    CSV 中没有“工作表名称”:它是纯文本文件格式,工作表名称始终显示为文件名。

    CSV 除了数据之外什么都没有——Excel 没有地方可以放置工作表名称(事实上,CSV 中甚至没有“工作表”)。如果您在记事本中打开 CSV,您可以明白我的意思。

    【讨论】:

    • 太棒了。谢谢。
    【解决方案2】:

    当您将新工作簿另存为 .CSV 时,工作表名称会丢失。该文件只是一个文本 csv 文件。当 Excel 重新打开此 .csv 文件时,工作表名将默认为文件名。

    【讨论】:

      猜你喜欢
      • 2016-02-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-23
      • 1970-01-01
      • 2021-08-23
      • 1970-01-01
      • 2015-08-03
      相关资源
      最近更新 更多