Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Contributor


Сообщения: 2728
Благодарности: 1697

Профиль | Отправить PM | Цитировать


kvant-07,
Я не проверял работу Вашего кода (рабочий вариант для одного файла), я тупо оформил его в виде процедуры и поместил её вызов внутрь цикла по всем html-файлам текущей папки. Те изменения Вашего кода, которые я счел необходимым сделать, я выделил
Код: Выделить весь код
@Echo Off
	FOR %%f IN (*.html) DO Call :OneFile "%%f"
GoTo :Eof

:OneFile

Set "CSV=%~1.csv"

echo Число мес;Час;номер>> "%CSV%"
echo месяц;; дог.номер>> "%CSV%"
echo ;;адрес>> "%CSV%"

set /A n=0
set /A sum=3
for /f "usebackq eol=	 skip=31 tokens=1,2,3,4* delims=<> " %%i in ("%1") do call :remap %%i %%k
echo Сумма;;=СУММ(C4:C%sum%)>> "%CSV%"
goto :EOF

:remap
if "%1"=="TR" set n=1 
if "%1"=="TD" (
    set /a n+=1
    if %n%==2 set s3=%2
    set ss3=%s3:.=,%
    if %n%==6 set s2=%2
    if %n%==7 (
      echo %2;%s2%;%ss3%>> "%CSV%"
      set /a sum+=1
      )
)
exit /b

У меня такое ощущение, что это промежуточная работа и Вам в ответе надо получить Excel-файлы. ИМХО, разумнее нарисовать VBS-скрипт, который сразу из исходных файлов получит данные в Excel-таблицах.
Хотел из любопытства скачать Ваш файл - что-то не получилось. Может, его переименовать надо, например с расширением .txt либо упаковать?

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 01-06-2018 в 15:16.


Отправлено: 14:58, 01-06-2018 | #25