Добрый день! Подскажите, написал скрип котрый по очереди открывает файлы в папке и сохраняет нужные даные в файл. Проблема заключается в том что незнаю как правильно написать чтоб програмка не создавала новый файл а дозаписывала новые строки в текущий уже созданный файл.
Вот мой код:
Вот мой код:
Код:
#include <Array.au3> ;подключаем
#include <Excel.au3>
#include <File.au3>
$aFiles = _FileListToArray(@ScriptDir & '\in', '*.csv', 1)
For $i =1 To $aFiles[0]
$hFileTemp = FileOpen(@ScriptDir & '\in\' & $aFiles[$i], 0)
$String = FileRead($hFileTemp) ;читаем
$sFilePath1 = @ScriptDir & "\result1.xls"
$HFILL = StringRegExp($String, '(?s)<HFILL>(.*?)</HFILL>', 3)
$HTIN = StringRegExp($String, '(?s)<HTIN>(.*?)</HTIN>', 3)
$HNAME = StringRegExp($String, '(?s)<HNAME>(.*?)</HNAME>', 3)
$HBOS = StringRegExp($String, '(?s)<HBOS>(.*?)</HBOS>', 3)
$H01G1S = StringRegExp($String, '(?s)<H01G1S>(.*?)</H01G1S>', 3)
$HTINSTI = StringRegExp($String, '(?s)<HTINSTI>(.*?)</HTINSTI>', 3)
$HSTI = StringRegExp($String, '(?s)<HSTI>(.*?)</HSTI>', 3)
$HLOCSTI = StringRegExp($String, '(?s)<HLOCSTI>(.*?)</HLOCSTI>', 3)
$HEMAIL = StringRegExp($String, '(?s)<HEMAIL>(.*?)</HEMAIL>', 3);вытягиваем
Local $aResult[1000][9]
$aResult[0][0] = 'Дата формування'
$aResult[0][1] = 'ЄД'
$aResult[0][2] = 'НАЗВА '
$aResult[0][3] = 'ПІБ '
$aResult[0][4] = 'ДІЄ '
$aResult[0][5] = 'ЄДР'
$aResult[0][6] = 'НАЗВА '
$aResult[0][7] = 'ПОСИЛАННЯ '
$aResult[0][8] = 'ЕМЕІЛ'
$aResult [1][0] = $HFILL[0]
$aResult [1][1] = $HTIN[0]
$aResult [1][2] = $HNAME[0]
$aResult [1][3] = $HBOS[0]
$aResult [1][4] = $H01G1S[0]
$aResult [1][5] = $HTINSTI[0]
$aResult [1][6] = $HSTI [0]
$aResult [1][7] = $HLOCSTI[0]
$aResult [1][8] = $HEMAIL[0]
$oExcel = _Excel_Open(True)
$oWorkbook = _Excel_BookNew($oExcel)
_Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $aResult)
_Excel_BookSaveAs($oWorkbook, $sFilePath1[$i])
_Excel_BookClose($oWorkbook)
_Excel_Close($oExcel)
Next
Последнее редактирование модератором: