Fórmulas de data para atualizar um caminho de arquivo em arquivo em lote

Fórmulas de data para atualizar um caminho de arquivo em arquivo em lote

Estou tentando escrever um arquivo em lote para converter um conjunto de arquivos Excel de .xls para .xlsx para um relatório mensal que possuo.

Isso é o que tenho atualmente:

"C:\Program Files (x86)\Microsoft Office\Office14\excelcnv.exe" -oice "H:\File Path\2018\Support\03 March\Other\03 Export.xls" "H:\File Path\2018\Support\03 March\Other\03 Export.xlsx"

Eu gostaria de poder executar isso sem precisar alterar o mês no caminho do arquivo, que é mais ou menos assim:

H:\File Path\2018\Support\03 March\Other

Gostaria de fazer com que, quando eu executar o próximo mês, ele coloque automaticamente "04 de abril" onde é 03 de março. Também seria ótimo se eu pudesse preencher 2018 no caminho do arquivo. Isso é possível para um arquivo em lote?

Obrigado!

Responder1

:: Q:\Test\2018\04\12\SU1313056.cmd
@Echo off&SetLocal EnableExtensions EnableDelayedExpansion

:: Get date in a locale/user-settings independent format
for /f "tokens=1-3 delims=.+-" %%A in (
  'wmic os get LocalDateTime^|findstr ^^[0-9]'
    ) do Set _DT=%%A
Set "yy=%_DT:~0,4%"&Set "MM=%_DT:~4,2%"&Set "dd=%_DT:~6,2%"

:: Build MonthName[01..12] array
Set i=100&Set "MonthName= January February March April May June July August September October November December"
Set "MonthName=%MonthName: ="&Set /a i+=1&Set "MonthName[!i:~-2!]=%"
:: Set MonthName

Set "Excel=C:\Program Files (x86)\Microsoft Office\Office14\excelcnv.exe"
Set "Src=H:\File Path\%yy%\Support\%MM% !MonthName[%MM%]!\Other\%MM% Export.xls"
Set "Dst=%Src%x"

:: Show command
Echo "%Excel%"  -oice^^
Echo   "%Src%" ^^
Echo   "%Dst%"

If Not exist "%Excel%" (Echo Can't find "%Excel%" & Pause & Exit /B 1)
If Not exist "%Src%"   (Echo Can't find "%Src%"   & Pause & Exit /B 1)

::DoIt
"%Excel%" -oice "%Src%" "%Dst%"

Exemplo de saída:

"C:\Arquivos de programas (x86)\Microsoft Office\Office14\excelcnv.exe" -oice^
"H:\Caminho do arquivo\2018\Support\04 April\Other\04 Export.xls" ^
"H:\Caminho do arquivo \2018\Support\04 April\Other\04 Export.xlsx"
Não é possível encontrar "C:\Arquivos de Programas (x86)\Microsoft Office\Office14\excelcnv.exe"
Não é possível encontrar "H:\Caminho do Arquivo\2018 \Suporte\04 de abril\Outros\04 Export.xls"

informação relacionada