2014-10-20 37 views
0

我正在查找可以编写的代码,该代码可以打开excel并对打开的工作簿中的字段进行排序。打开excel文件并使用批处理文件命令对内容进行排序

一个想到的可能是:

set the workbook to run a vba sorting script on open 
start Excel.exe filename.xls 

这将是一个可行的选择?如果是这样,我将如何在开放时启动vba脚本?

+0

你的要求可以解释多种方式,因此它是混乱。文件名中的字符串是什么?或文件内容?另外,你还没有问过问题,更不用说编程问题了。你只是简单地说明你的要求是什么。编辑你的问题更清晰,并显示你已经尝试过。 – dbenham 2014-10-20 19:04:46

回答

0

只显示文件包含“PRE100”的文件名:

@echo off 

For %%f in (SOURCE_PATH\*PRE100*.*) do Echo %%f 

只移动文件,其中包含“PRE100”的文件名,到另一个目录:

@echo off 

For %%f in (SOURCE_PATH\*PRE100*.*) do Move %%f DESTINY_PATH 

根据需要更改SOURCE_PATHDESTINY_PATH

0

当我正确地阅读你的问题时,“PRE100”不在文件名中,而是在文件内容中。

for /f %%i in ('dir /b *.*') do find /i "PRE100" "%%i">nul && move "%%i" newFolder 

对于所有文件:如果它包含“PRE100”,则将其移动。

find /i使得搜索不区分大小写(找到PRE100,Pre100,pre100)

&&充当“如果前面的命令成功,则”需要

各地%%i的双引号与文件名来工作,即包含空格。

0

我想我明白了!

让我知道,如果有什么不足之处做这种方式:

@ECHO OFF 

robocopy "PRIMARY_DIR" "DEST_DIR" 

*PRE100*.* /XN 

%SystemRoot%\explorer.exe "DEST_DIR" 

cmd /k Path to the O.bat 
相关问题