NibelungXXX |
04-07-2013 19:19 2179425 |
считывать переменные с txt в батник по дате
здравствуйте, есть текстовый документ колич.txt
в нем каждый день генерируется отчет и каждый день продолжается, дата-название-обьем
Код:
за 05.21 R1 - 10
за 05.21 R2 - 4302
за 05.21 R3 - 1
за 05.21 R4 - 16
за 05.22 R1 - 0
за 05.22 R2 - 3073
за 05.22 R3 - 3
за 05.22 R4 - 4
и т.д
Есть сегодняшняя дата, как сделать чтобы батник с txt файла считывал дату(сегодняшнюю), название и обьем и вносил в переменные.. просто эти переменные надо в excel внести будет..
и как сделать чтобы: есть сегодняшняя дата, вчерашняя и позавчерашняя..Нода чтобы батник внес в переменные 3 этих дня которые указаны в промежутке
|
Цитата:
Цитата NibelungXXX
просто эти переменные надо в excel внести будет.. »
|
Почему тогда не делать сие непосредственно из-под Excel?
|
NibelungXXX |
04-07-2013 20:33 2179472 |
Цитата:
Цитата Iska
Почему тогда не делать сие непосредственно из-под Excel? »
|
потому что генерится это партнерами и никак не пришлют excel, шлют только txt
|
За текущий так:
Код:
@echo off
for /f "tokens=3,5" %%i in ('findstr %date:~3,2%.%date:~0,2% колич.txt') do (
set /a count+=1
call set x%%count%%=%%i
call set y%%count%%=%%j
)
set | findstr /r /c:"^x" /c:"^y"
pause
|
Цитата:
Цитата NibelungXXX
потому что генерится это партнерами и никак не пришлют excel, шлют только txt »
|
А причём тут партнёры? Я говорю: Вы собираетесь извлечённую информацию добавлять в рабочую книгу Excel — так и делайте это сразу из-под Excel.
|
NibelungXXX |
04-07-2013 21:09 2179499 |
Sphinx114 спасибо, за текущую дату вытаскивает, и с помощью vbs подкрепляю в excel, но как быть если были выходные и в понедельник надо за пятницу, суботту и воскресенье чтоб вытаскивал..Дата понедельника и дата пятницы известны
Цитата:
Цитата Iska
А причём тут партнёры? Я говорю: Вы собираетесь извлечённую информацию добавлять в рабочую книгу Excel — так и делайте это сразу из-под Excel. »
|
мне надо чтоб автоматически это делалось через батник, до этого excel программа уже выполняет операций 20 разных
|
Ну так сюда:
Цитата:
Цитата NibelungXXX
и с помощью vbs подкрепляю в excel »
|
и добавьте.
|
NibelungXXX |
04-07-2013 21:56 2179527 |
там просто переменную вытаскиваешь, потом ей добовляешь в определенную позицию, а как по другому можно?
|
Код:
@echo off
::set date=04.07.2013
call :z -0 %date% a b
call :z -1 %date% c d
call :z -2 %date% e f
set | findstr /r /c:"^[abcdef]"
pause
exit
:z
SetLocal
Set DT=%2
Set yyyy=%DT:~-4%& set /a mm=100%DT:~3,2%%%100& set /a dd=100%DT:~,2%%%100
Set /A JD=%~1+dd-32075+1461*(yyyy+4800+(mm-14)/12)/4+367*(mm-2-(mm-14)/12*12)/12-3*((yyyy+4900+(mm-14)/12)/100)/4
Set /A L=JD+68569,N=4*L/146097,L=L-(146097*N+3)/4,I=4000*(L+1)/1461001
Set /A L=L-1461*I/4+31,J=80*L/2447,K=L-2447*J/80,L=J/11
Set /A J=J+2-12*L,I=100*(N-49)+I+L
Set /A yyyy=I,mm=100+J,dd=100+K
EndLocal& Set mm.dd=%mm:~-2%.%dd:~-2%
for /f "tokens=3,5" %%i in ('findstr %mm.dd% колич.txt') do (
set /a count+=1
call set %3%%count%%=%%i
call set %4%%count%%=%%j
)
set "count="
Где set date можно раскомментировать и переопределить текущую дату. Если надо более чем за 3 дня, то добавляете строки с call :z по аналогии.
|
Время: 05:42.
© OSzone.net 2001-