Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CSV格式的Excel宏_Excel_Csv_Export To Excel_Vba - Fatal编程技术网

CSV格式的Excel宏

CSV格式的Excel宏,excel,csv,export-to-excel,vba,Excel,Csv,Export To Excel,Vba,有没有办法以CSV文件格式运行Excel宏 我正在使用CSV模板将文件导出到CSV,是否可以在CSV格式的模板上编写宏。我不能用XLS格式。有人能帮我吗?当您无法将宏保存在CSV文件中时,您也可以 使用控制器工作簿或加载项在CSV上运行宏 更进一步,以编程方式将代码添加到CSV文件(例如添加事件处理程序) 如果您提供了更多关于您需要做什么的信息,那么我们可以通过上面的路径提供帮助 (编辑:仍然不清楚CSV文件是如何生成的-是通过Excel还是其他应用程序生成的?] 使用Pearson's,您可以

有没有办法以CSV文件格式运行Excel宏

我正在使用CSV模板将文件导出到CSV,是否可以在CSV格式的模板上编写宏。我不能用XLS格式。有人能帮我吗?

当您无法将宏保存在
CSV
文件中时,您也可以

  • 使用控制器工作簿或加载项在
    CSV
    上运行宏
  • 更进一步,以编程方式将代码添加到
    CSV
    文件(例如添加事件处理程序)
  • 如果您提供了更多关于您需要做什么的信息,那么我们可以通过上面的路径提供帮助

    (编辑:仍然不清楚CSV文件是如何生成的-是通过Excel还是其他应用程序生成的?]

    使用Pearson's,您可以使用底部的代码(来自打开的Excel controller工作簿)捕获新添加的
    CSV
    文件,然后对其进行格式化

    如果需要动态捕获
    CSV
    文件的创建,则需要使用更复杂的方法,如使用

    控制器工作簿方法

    此工作簿模块

    类模块称为CexElevents


    要实现您想要做的事情,您需要首先创建一个包含所需宏VB代码的XLS。然后您需要将此XLS保存在始终可用的位置(例如,在HD或公司网络上)。然后,您需要在计算机上的Excel中创建一个自定义按钮,并将此按钮链接到您希望启动的VB宏模块。这意味着,无论何时手动打开Excel,或通过打开CSV,工具栏中的自定义按钮都与其他按钮一样。然后,当在Excel中打开CSV时,您可以单击custom按钮,它将从保存的XLS(无论在何处)启动链接到的宏。

    设置:Excel 2010

    将创建的宏保存到个人宏工作簿中

    详细信息

  • 打开*.csv文件
  • 录制宏并将其存储在个人宏工作簿中
  • 当消息框询问您是否要保存对个人宏工作簿所做的更改时,请退出Excel并单击“保存”

  • 您可以在xls文件中创建宏并将其运行到csv文件中实际上我正在使用csv模板并从该模板生成报告,该模板也是csv格式。这是由java类完成的,在java类中,我无法修改xls的扩展名。因此我必须在csv模板中编写宏,因此生成报告时,宏应该运行。宏用VBA编写并从Excel中运行。是否要将宏代码导出到csv文件?我已尝试在xls中创建宏,并将扩展名更改为.csv,它实际运行宏,但会破坏数据。@fduff不希望将宏导出到csv。。而是使用VBA写入包含宏的csv文件。。使用e运行哪个cudxcel..我需要触发工作簿的打开事件..它实际格式化csv报告。csv模板位于服务器计算机中,是否可以运行代码,因此当最终用户从模板生成报告时,打开事件应在生成的csv文件上运行。但其服务器客户端应用程序…在所有客户端计算机上创建自定义按钮并不实际ine..抱歉,我没有读到您关于使用控制器工作簿的评论,因为这意味着将一个宏从外部XLS添加到快速访问工具栏-这就是为什么我建议这样做的原因,因为这是在打开的工作表上运行外部宏的最快、最简单的方法(实际上没有打开宏XLS)。正如@brettdj已经指出的,您不能在CSV文件中保存宏。CSV文件只是一个简单的ascii文件,除了纯文本之外,不会包含任何内容。如果您无法在打开此CSV的客户端计算机上更改任何内容,那么除了建议的选项之外,我看不到您有很多其他选项—客户机m当Excel打开时打开的外接程序是一个选项,或者我已经建议的功能区上的自定义按钮(无缝且快速)。
    Private XLApp As CExcelEvents
    
    Private Sub Workbook_Open()
        Set XLApp = New CExcelEvents
    End Sub
    
    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