我创建了一个vba脚本来复制多个pdf文件中的所有数据,并使用相同名称的pdf文件粘贴到不同选项卡中的Excel中。
问题是它从pdf文件中复制数据并粘贴在工作表的相同选项卡中,而不是另一个。请告诉我这里我的错误。
答案 0 :(得分:5)
您需要重置wsOutp
,然后再检查它是否为空。
如上所述,您设置wsOutp
以引用初始循环中的工作表。然后,您必须在下一个循环之前将其重置为空,因为当您尝试将其设置为引用可能不存在的另一个工作表时,如果失败,则引用仍指向原始工作表。那么最终会发生什么,是你在下一步删除工作表。
所以实际上你的代码没有覆盖到相同的表,但是你要删除你创建的每张表,所以最后你只剩下一张表。
添加以下行:
' Delete sheet with filename if exists
Set wsOutp = Nothing
On Error Resume Next
Set wsOutp = Sheets(strFile)
On Error GoTo 0
If Not wsOutp Is Nothing Then
wsOutp.Delete
End If