【问题标题】:Opening a csv file in a macro enabed workbook and making changes, saving the cvs file without the macros enabled在启用宏的工作簿中打开 csv 文件并进行更改,在未启用宏的情况下保存 cvs 文件
【发布时间】:2017-08-08 07:27:42
【问题描述】:

我有一个 .csv 文件,它会经常生成并使用时间戳命名。我需要在其中运行一个宏并更新 .csv 文件。我使用此解决方案Run Excel Macro from Outside Excel Using VBScript From Command Line 来运行我的宏,但我的问题是我无法保存 .csv 文件,而其中没有启用宏并且更改保存在其中。我只有一张 csv 文件。谢谢您的帮助! 这是我正在使用的代码,(来自该链接):

   Dim oFSO
   Dim oShell, oExcel, oFile, oSheet
   Set oFSO = CreateObject("Scripting.FileSystemObject")
   Set oShell = CreateObject("WScript.Shell")
   Set oExcel = CreateObject("Excel.Application")
   Set wb2 = oExcel.Workbooks.Open("D:\.....\PERSONAL.XLSB") 'Specify     foldername here 

   oExcel.DisplayAlerts = False

   For Each oFile In oFSO.GetFolder("D:\..\Output1\").Files
      If LCase(oFSO.GetExtensionName(oFile)) = "csv" Then
 
         With oExcel.Workbooks.Open(oFile, 0, True, , , , True, , , , False, , False)
         oExcel.Run wb2.Name & "!final1"
         
         End With
      End If
   Next

【问题讨论】:

标签: vba excel csv vbscript


【解决方案1】:

csv 文件是一个文本文件。用文本编辑器打开它,你会看到。

它没有嵌入宏的功能。

您需要在 excel 文件中包含宏,并让它完成您需要的工作

【讨论】:

  • 您好,感谢您的回复!我正在尝试从个人工作簿运行宏,我认为“使用 oExcel.Workbooks.Open(oFile, 0, True, , , , True, , , , False, , False)”打开我的 .csv 文件运行里面的宏。如果我使用 oExcel.Save ,在运行时它会要求我保存编辑的文件。我需要自动保存。
猜你喜欢
  • 2016-01-25
  • 2017-06-23
  • 1970-01-01
  • 2015-06-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多