Загрузить документ в Excel через vba на основе имени do c - PullRequest
0 голосов
/ 25 апреля 2020

Я написал код ниже, этот код загружает весь документ с общего диска в Excel в соответствии с их соглашением об именах.

Однако это применимо только для файла PDF. Можете ли вы помочь мне, как я могу загрузить другой файл ext, как outlook / word / excel?

Dim folderPath As String, fileName As String
Dim destCell As Range

With Worksheets("ABC")
folderPath = .Range("F7").Value
Set destCell = .Range("G12")
End With

If Right(folderPath, 1) <> "\" Then folderPath = folderPath & "\"

Application.ScreenUpdating = False
fileName = Dir(folderPath & "ABC*.pdf")
Do While fileName <> vbNullString
destCell.Worksheet.OLEObjects.Add _
fileName:=folderPath & fileName, _
Link:=False, _
DisplayAsIcon:=True, _
IconFilename:="C:\windows\Installer\{AC76BA86-1033-F400-7760-000000000005}\_PDFFile.ico", _
IconIndex:=0, _
IconLabel:=fileName, _
Left:=destCell.Left, _
Top:=destCell.Top, _
Width:=150, _
Height:=5
Set destCell = destCell.Offset(, 1)
fileName = Dir
Loop
Application.ScreenUpdating = True

MsgBox "Document Uploaded Successfully..!!"

1 Ответ

0 голосов
/ 26 апреля 2020

Как-то так?

Dim folderPath As String, fileName As String
Dim destCell As Range

With Worksheets("ABC")
folderPath = .Range("F7").Value
Set destCell = .Range("G12")
End With

If Right(folderPath, 1) <> "\" Then folderPath = folderPath & "\"

Application.ScreenUpdating = False
fileName = Dir(folderPath & "ABC*.*")
Do While fileName <> vbNullString
destCell.Worksheet.OLEObjects.Add _
fileName:=folderPath & fileName, _
Link:=False, _
DisplayAsIcon:=True, _
IconFilename:="C:\windows\Installer\{AC76BA86-1033-F400-7760-000000000005}\_PDFFile.ico", _
IconIndex:=0, _
IconLabel:=fileName, _
Left:=destCell.Left, _
Top:=destCell.Top, _
Width:=150, _
Height:=5
Set destCell = destCell.Offset(, 1)
fileName = Dir
Loop
Application.ScreenUpdating = True

MsgBox "Document Uploaded Successfully..!!"
...