如何解决使用vba
我在网上找到了一个用于填充pdf的代码,我不熟悉vba,所以不知道如何解决它,但是由于反复试验,我能够填充pdf并到达保存菜单附近,但是现在在填充名称时,我有一个问题,只有第一行数据被保存为默认名称,而下一行数据创建错误,提示您要替换以前的文件,所以我不确定如何修复它并分别命名(唯一)。同样,我对vba知之甚少。 PFA代码和屏幕截图
Option Explicit
Sub PDFTemplate()
Dim PDFFldr As FileDialog
Set PDFFldr = Application.FileDialog(msoFileDialogFilePicker)
With PDFFldr
.Title = "Select PDF file to attach"
.Filters.Add "PDF Type Files","*.pdf",1
If .Show <> -1 Then GoTo NoSelection
Sheet1.Range("B1").Value = .SelectedItems(1)
End With
NoSelection:
End Sub
Sub SavePDFFolder()
Dim PDFFldr As FileDialog
Set PDFFldr = Application.FileDialog(msoFileDialogFolderPicker)
With PDFFldr
.Title = "Select a Folder"
If .Show <> -1 Then GoTo NoSel:
Sheet1.Range("B2").Value = .SelectedItems(1)
End With
NoSel:
End Sub
Sub CreatePDFForms()
Dim PDFTemplateFile,NewPDFName,SavePDFFolder,EIN1,EIN2,Name As String
'Dim ApptDate As Date
Dim CustRow,LastRow As Long
With Sheet1
If .Range("B1").Value = Empty Or .Range("B2").Value = Empty Then
MsgBox "Both PDF Template and Saved PDF Locations are required for macro to run"
Exit Sub
End If
LastRow = .Range("D9999").End(xlUp).Row 'Last Row
PDFTemplateFile = .Range("B1").Value 'Template File Name
SavePDFFolder = .Range("B2").Value 'Save PDF Folder
ThisWorkbook.FollowHyperlink PDFTemplateFile
Application.Wait Now + 0.00009
For CustRow = 7 To LastRow
Name = .Range("F" & CustRow).Value ' Name
EIN1 = .Range("D" & CustRow).Value ' EIN1
Application.SendKeys "{Tab}",True
Application.SendKeys EIN1,True
Application.Wait Now + 0.00002
Application.SendKeys "{Tab}",True
Application.SendKeys .Range("E" & CustRow).Value,True 'EIN2
Application.Wait Now + 0.00002
Application.SendKeys "{Tab}",True
Application.SendKeys .Range("F" & CustRow).Value,True 'Name
Application.Wait Now + 0.00002
'Application.SendKeys "{Tab}",True
Application.SendKeys "^+(s)",True
Application.Wait Now + 0.00003
If CustRow = 7 Then
Application.SendKeys "{Tab}",True
End If
Application.SendKeys "{Enter}",True
Application.Wait Now + 0.00003
'Application.SendKeys ("{BACKSPACE}")
'Application.Wait Now + 0.00001
'Application.SendKeys "%(n)",True
'Application.Wait Now + 0.00001
'If Dir(SavePDFFolder & "\" & CustRow & ".pdf") <> Empty Then Kill (SavePDFFolder & "\" & CustRow & ".pdf")
Application.SendKeys ("{BACKSPACE}")
Application.Wait Now + 0.00002
'Application.SendKeys "%(n)",True
'Application.Wait Now + 0.00002
'Application.SendKeys "CustRow" & ".pdf"
Application.SendKeys SavePDFFolder & "\" & CustRow & ".pdf"
Application.Wait Now + 0.00005
Application.SendKeys "%(s)",True
Application.Wait Now + 0.00002
'Name = .Range("F" & CustRow).Value ' Name
'If Dir(SavePDFFolder & "\" & Name & "_" & ".pdf") <> Empty Then Kill (SavePDFFolder & "\" & Name & "_" & ".pdf")
'Application.SendKeys "{Enter}",True
'Application.SendKeys "%(n)",True
'Application.Wait Now + 0.00002
'Application.SendKeys SavePDFFolder & "\" & Name & "_" & ".pdf"
'Application.Wait Now + 0.00002
'Application.SendKeys "%(s)",True
'Application.Wait Now + 0.00002
Next CustRow
Application.SendKeys "^(q)",True
Application.SendKeys "{numlock}%s",True
End With
End Sub
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。