Wenn Sie vbscript verwenden, und festlegen eines ADO-recordset in eine variable

Ich habe eine Menge von PDF-Dateien, die ich versuche zu benennen, basierend auf Kriterien in einer excel-Tabelle. Das Arbeitsblatt listet die ID, Nachname, Vorname.

| 123456 | Smith | Joe |

Kann ich öffnen und Lesen von excel problemlos erstellen von ado-Verbindung und eine Antwort erhalten auf meine Anfrage, kann aber nicht einen Weg finden, um die Teilnahme der Datensatzgruppe, die den Dateinamen enthält, und speichern Sie Sie als variable.

Den code, den ich verwende:(aktualisiert zum aktuellen Zeichensatz)

'On Error Resume Next

LetterDirectory = InputBox("What letter are we scanning?")

DirectoryLocation = "C:\CLNotes\"
LetterDirectory = UCase(LetterDirectory)
SubDirectory = DirectoryLocation & LetterDirectory
FullDirectory = DirectoryLocation & LetterDirectory & "\*.pdf"

'Creating Excel objects
Set xl = CreateObject("Excel.Application")
Set xlBook = xl.Workbooks.Open("c:\CLnotes\dbo_Patient.xlsx")
Set xlSheet = xlBook.Worksheets(LetterDirectory)
xl.Visible = True

'Set Variables
xlRow = 1
totalRows = xl.WorksheetFunction.CountA(xlSheet.Range("A:A"))
oldFilename = 0

For xlRow = 1 to totalRows

LastName = xlSheet.Cells.Item(xlRow, 2).text
FirstName = xlSheet.Cells.Item(xlRow, 3).text
FullName = LastName & " " & Firstname
newFilename = xlSheet.Cells.Item(xlRow, 1).Text
'FullName = "b lorraine"

Set objConnection = CreateObject("ADODB.Connection")
Set objRecordSet = CreateObject("ADODB.Recordset")
objConnection.Open ("Provider=Search.CollatorDSO;Extended Properties='Application=Windows';")
objRecordSet.Open ("SELECT System.FileName FROM SYSTEMINDEX WHERE Contains('" & FullName & "')"), objConnection
objRecordSet.MoveFirst
oldFilename = objRecordset.Fields.Item("System.FileName")
Do Until objRecordset.EOF
    Wscript.Echo objRecordset.Fields.Item("System.FileName")
    objRecordset.MoveNext
Loop
Next

Dank.

InformationsquelleAutor fiercebeard | 2013-03-19

Schreibe einen Kommentar