Sub CopyData Dim wb1 As Workbook wb2 As Workbook Dim ws1 As Worksheet ws2 As Worksheet Dim filePath As String fileName As String Set wb1 = ThisWorkbook 当前工作簿 构建完整的文件路径 filePa
这段VBA代码的问题在于文件路径和文件名的拼接方式不正确。在路径和文件名的拼接时,应使用路径分隔符来连接路径和文件名。另外,还可以添加错误处理来处理文件找不到的情况。
以下是修改后的代码:
Sub CopyData() Dim wb1 As Workbook, wb2 As Workbook Dim ws1 As Worksheet, ws2 As Worksheet Dim filePath As String, fileName As String
Set wb1 = ThisWorkbook '当前工作簿
'构建完整的文件路径
filePath = "H:\Engineering\PT-BE-ETS-HZ_Act\EIS_Report\Pronovia\"
fileName = "Runing_Project_Status_560A_*" & Format(Date, "yyyymmdd") & ".xlsx"
'搜索目标文件
On Error Resume Next
Set wb2 = Workbooks.Open(Dir(filePath & fileName))
On Error GoTo 0
If wb2 Is Nothing Then
MsgBox "找不到目标文件"
Exit Sub
End If
Set ws1 = wb1.Sheets("data") '当前工作簿的data sheet
Set ws2 = wb2.Sheets("data") '目标工作簿的data sheet
'复制数据
ws2.Range("A1").UsedRange.Copy
ws1.Range("A1").PasteSpecial xlPasteValues
wb2.Close False '关闭目标工作簿,不保存
MsgBox "data sheet已更新"
End Su
原文地址: https://www.cveoy.top/t/topic/hyh3 著作权归作者所有。请勿转载和采集!