如何脚本Excel 2013的电子表格比较?
我正在尝试将Excel 2013的“查询外接程序”中新奇的“ 电子表格比较”function合并到VBA脚本中。
该计划是有一个macros来自动比较两个电子表格与预定义的名称,并导出所有的差异作为一个新的电子表格。
没有成功,迄今为止。
以下是我迄今为止所尝试的:
- 通常,要学习如何自动化一些Excelfunction,我使用Record Macro。
- 如果失败了,我查看可添加的引用列表,看看我是否失去了一些明显的东西。
在这种情况下,这两个都失败了。 没有代码出现与电子表格比较相关,当我logging一个macros(只有外围的东西像细胞select出现)。 并没有可加参考看起来像电子表格比较。
那么我怎样才能从VBA脚本Excel的2013电子表格比较?
我打开了一个类似的问题,用于自动化.NET应用程序中的电子表格比较工具,但是我还没有发现任何其他方式,而不是从命令行执行它。
您可以从您的VBA加载项中执行此操作。 您只需要find可执行文件SPREADSHEETCOMPARE.EXE(通常位于C:\ Program Files(x86)\ Microsoft Office \ Office15 \ DCF)中,并使用指令文件作为input参数在命令行中执行该文件。
这个指令文件必须是一个ASCII文件,两个Excel文件path要在不同的行中进行比较。
你不能。
VBA不包括在这种情况下添加。
电子表格比较是被微软吞噬的第三方插件。
如果你需要脚本比较,你可以find那些每个单元格,每行…在networking上的东西。
-
创build一个runCompare.cmd文件:
REM Execute from command line spreadsheetcompare.exe REM cd C:\Program Files (x86)\Microsoft Office 2013\Office15\DCF spreadsheetcompare.exe C:\reportNames.txt
-
在C:\ reportNames.txt中,保存在你想要比较的.xlsx文件的同一行:
C:\fileA.xlsx C:\fileB.xlsx
-
执行runCompare.cmd。