Technik_spat, поместите amark_sgtin.txt и REPACK.txt в один каталог. Поместите следующий код:
Скрытый текст
Код:
Option Explicit
Const adLockOptimistic = 3
Const adOpenStatic = 3
Const adCmdText = 1
Dim objFSO
Dim objRecordSet
Dim strPath2Script
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objRecordSet = WScript.CreateObject("ADODB.Recordset")
strPath2Script = objFSO.GetParentFolderName(WScript.ScriptFullName)
With objFSO.CreateTextFile(objFSO.BuildPath(strPath2Script, "Schema.ini"), True)
.WriteLine Join( _
Array( _
"[amark_sgtin.txt]", _
"ColNameHeader=True", _
"Format=Delimited(;)", _
"TextDelimiter=none", _
"CharacterSet=ANSI", _
"", _
"[REPACK.txt]", _
"ColNameHeader=False", _
"Format=Delimited(;)", _
"TextDelimiter=none", _
"CharacterSet=ANSI", _
"Col1=SGTIN Text", _
"Col2=Any Text", _
"Col3=Price Text", _
"", _
"[ResultFile.txt]", _
"ColNameHeader=True", _
"Format=Delimited(;)", _
"TextDelimiter=none" _
), vbCrLf _
)
.Close
End With
If objFSO.FileExists(objFSO.BuildPath(strPath2Script, "ResultFile.txt")) Then
objFSO.DeleteFile objFSO.BuildPath(strPath2Script, "ResultFile.txt")
End If
objRecordSet.Open "SELECT L.[SGTIN], R.[Price] " & _
"INTO [ResultFile.txt] " & _
"FROM [amark_sgtin.txt] AS L LEFT JOIN " & _
"[REPACK.txt] AS R ON " & _
"L.[SGTIN] = R.[SGTIN] " & _
"WHERE L.[STATUS] IN (11, 99, 14)", _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strPath2Script & ";Extended Properties=""text;""", _
adOpenStatic, adLockOptimistic, adCmdText
Set objRecordSet = Nothing
Set objFSO = Nothing
WScript.Quit 0
в файл с расширением .vbs в тот же каталог. Запустите скрипт из сохранённого файла на исполнение (если у Вас x64 ОС — используйте x86-версию хоста wscript.exe/cscript.exe из каталога C:\Windows\SysWOW64). Если скрипт отработает корректно, Вы получите в том же каталоге результирующий csv-файл ResultFile.txt с искомым содержимым.
Например:

|