Excelスプレッドシートで見つかった基準に基づいて名前を変更しようとしているPDFファイルがたくさんあります。スプレッドシートには、ID、姓、名がリストされています。
| 123456 | Smith | Joe |
Excel を開いて読み取ることができ、ado 接続を作成してクエリへの応答を取得できますが、ファイル名を含むレコードセットの一部を取得して変数として保存する方法が見つかりません。
私が使用しているコード:(現在のコードセットに更新)
'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
ありがとう。