2014-10-20 92 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 
相關問題