首页 > 解决方案 > 如何将我已经拥有的工作簿保存为 CSV,并使用用户通过输入框提供的新名称?

问题描述

我需要一个宏来将工作簿保存为 CSV 文件。我已经拥有的代码运行良好,但此外,我希望用户被要求键入一个新文件 (CSV) 名称,以便新的 CSV 文件将是用户键入的文件。我怎样才能做到这一点?到目前为止,我还无法做到。现在,我需要做的是将新名称正确地放入代码中,并在每次我想要一个不同的名称时更改它。我需要添加什么代码?

我试图在代码中为 CSV_FILE_NAME 更改“\Group 1”,但它不起作用。第 1 组是一个新的 CSV 文件,就在代码中,我不希望这样。我希望用户输入任何名称。CSV_FILE_NAME 是新名称所在的变量。

Sub CSV_TERMINADO()

    Range("A:D,F:F,H:H").Select
    Range("H1").Activate
    Selection.Delete Shift:=xlToLeft
    Range("A1").Select
    ActiveCell.FormulaR1C1 = "Nombre"
    Range("B1").Select
    ActiveCell.FormulaR1C1 = "Correo"
    Range("A1").Select

    LibroActual = ActiveWorkbook.Name
    CSV_FILE_NAME = InputBox("Type a name", "CSV FILE")
    ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\Group 1", _
    FileFormat:=xlCSV, CreateBackup:=False
    Workbooks.Open ThisWorkbook.Path & "\" & LibroActual

End Sub

我希望在运行宏(子)之前得到用户键入的新 CSV 文件名,而不必在代码中直接命名。

标签: excelvba

解决方案


ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & CSV_FILE_NAME _ ...

推荐阅读