CSV中的Excelmacros

有没有办法以CSV文件格式运行Excelmacros?

我正在使用csv模板将文件导出为CSV,是否可以在CSV格式的模板上编写macros。 我不能用XLS格式。 谁可以帮我这个事?

虽然你不能在一个CSV文件中保存一个macros,你也可以

  1. 使用控制器工作簿或外挂程序在CSV上运行macros
  2. 更进一步,并以编程方式将代码添加到CSV文件(例如添加事件处理程序)

如果你提供更多的信息,你需要做什么,那么我们可以帮助上面的path。

编辑:它仍然不清楚如何生成CSV文件 – 这是通过Excel或其他应用程序?]

使用Pearson的应用程序事件示例,您可以使用底部的代码(从打开的Excel控制器工作簿)捕获添加的新CSV文件,然后对其进行格式化。

如果您需要即时创buildCSV文件,则需要使用更复杂的方法,例如在WMI中使用VBscript 。

Controller Workbook Approach

这个工作簿模块

 Private XLApp As CExcelEvents Private Sub Workbook_Open() Set XLApp = New CExcelEvents End Sub 

类模块称为CExcelEvents

 Private WithEvents App As Application Private Sub App_NewWorkbook(ByVal Wb As Workbook) If Wb.FileFormat = xlCSV Then MsgBox Wb & " is a Csvfile" 'your code End If End Sub Private Sub Class_Initialize() Set App = Application End Sub 

安装程序 :Excel 2010

将您创build的macros保存到个人macros工作簿。

详情

  1. 打开* .csv文件
  2. logging一个macros并将其存储在个人macros工作簿中。
  3. 退出Excel并在消息框询问您是否要保存对“个人macros工作簿”所做的更改时,单击“保存”。

链接到信息源。

为了实现你想要做的事情,你需要首先创build一个带有你想要的macrosVB代码的XLS。 然后,您需要将此XLS保存在始终可用的位置(即在HD上或公司networking上)。 然后,您需要在您的机器上的Excel中创build一个自定义button,并将此button链接到您想要触发的VBmacros模块。 这就意味着,无论您何时手动打开Excel,或通过打开CSV,都可以在工具栏上使用自定义button。 然后,当CSV在Excel中打开时,您可以单击自定义button,它会从已保存的XLS中触发已链接到的macros。