我在Excel 2013中记录了一个简单的排序宏,但它将工作表名称放在宏中:ActiveWorkbook.Worksheets("JUL15").Sort.SortFields.Clear
。我使用宏来对不同工作簿中的十几个不同的工作表进行排序,它们都具有相同的布局。
如何让宏工作在我选择的任何电子表格上?
此外,Excel,选项,高级,通用:指定启动pgm不起作用。路径有效且二进制.xlsb有效,但在启动时不会打开。
我不是程序员,至少在PC上。
答案 0 :(得分:0)
您可以使用ActiveSheet
代替ActiveWorkbook.Worksheets("JUL15")
它将在打开的工作表上工作。
答案 1 :(得分:0)
使用宏中建议的 Activesheet
来处理当前活动的工作表。
但是,我认为问题的另一部分与使用Personal.xlsb有关,它在Excel启动时启动,并允许您的宏可用,无论您打开哪些电子表格。
&#xA;&#xA;这应该有助于您进入那个方向... https://support.office.com/en-ca/article/Copy-your-macros-to-a-Personal-Macro-Workbook-aa439b90-f836-4381-97f0-6e4c3f5ee566 <编辑:&#xA;如果文件被禁用,您可以尝试这样做: http://www.mrexcel.com/forum/excel-questions/506647-files-xlstart-not -opening-automated.html
&#xA;&#xA;(进入加载项并确保Personal.xlsb文件不在禁用列表中。)
&#xA;答案 2 :(得分:0)
这是用于将Excel 2010中的个人.xls中的宏转换为Excel 2013的解决方案.Excel 2013将personal.xls标记为错误并禁用它。您可以将宏复制到2013年的新Personal.xlsb,但是您需要转到“加载项”#39;并管理禁用的项目以启用新的personal.xlsb。