首页 > 解决方案 > 将数据传输到另一个 excel 后的宏应该清除旧/以前的工作簿中的内容

问题描述

我是 excel 宏的新手。我创建了这个将数据传输到另一个 excel 文件的宏。但是,在传输文件后,它应该从旧工作表中清除我无法修复的内容,但会出现错误。下面是我的代码,它将在它停止并在下面的语句中调试之后正确传输数据。请帮忙,在传输数据后,我想清除旧 excel 中复制数据的内容。 设置 ws = Workbooks("Path Old WorkBook").Worksheets("Sheet2").Range("A2").ClearContents

Private Sub CommandButton2_Click()
Dim InvoiceNumber As String
Dim ForwarderCode As String
Dim Status As String
Dim wb As Workbook
Dim ws As Workbook

Worksheets("Sheet2").Select
InvoiceNumber = Range("A2")
Worksheets("SampleFile").Select
ForwarderCode = Range("B2")
Worksheets("SampleFile").Select
Status = Range("C2")

Set wb = Workbooks.Open("Path")
Worksheets("Sheet2").Select
Worksheets("Sheet2").Range("A2").Select
RowCount = Worksheets("Sheet2").Range("A1").CurrentRegion.Rows.Count
With Worksheets("Sheet2").Range("A1")
.Offset(RowCount, 0) = InvoiceNumber
.Offset(RowCount, 1) = ForwarderCode
.Offset(RowCount, 2) = Status
End With

wb.Save

Set ws = Workbooks("Path Old WorkBook").Worksheets("Sheet2").Range("A2").ClearContents
Set ws = Workbooks("Path Old WorkBook").Worksheets("Sheet2").Range("B2").ClearContents
Set ws = Workbooks("Path Old WorkBook").Worksheets("Sheet2").Range("C2").ClearContents
End Sub

标签: excelvba

解决方案


您的意思是 WS 指的是工作簿还是工作?无论如何,只需在最后 3Set ws = 位上退格即可。所以
Workbooks("Path Old...").Worksheets("Sheet2").Range("A2").ClearContents


推荐阅读