我的需求是每當我的主工作簿(main.xlsm)sheet1「A1」單元有更新時,我需要複製整行數據轉換成另一個excel(比如working.xlsm)。主表有從A到M的列,並且數據捕獲應取決於A1單元格數據更改。所有數據都保存在第二個excel中,所有新數據將被添加到下一行。將excel的整個列複製到另一個取決於單元格值的更改
我已將下面的代碼添加到我的第二個工作簿(working.xlsm)中,我需要保存所有數據,但它不起作用。我不知道如何使用範圍與with
功能
Private Sub Worksheet_Calculate()
With Sheet1
With .Cells(.Rows.Count, "B").End(xlUp)
If .Value <> Workbooks("main.xlsm").Worksheets("Sheet1").Range("A1").Value Then
.Offset(1).Value = Sheet1.Range("A:M").Value
End If
End With
End With
End Sub
嵌套語句是不必要的。只需使用'With Sheet1.Cells(Sheet1.Row.Count,「B」)。End(xlUp)'。你也沒有定義Sheet1 – sourceCode
你也必須打開「main.xlsm」工作簿來引用它,就像那樣 – sourceCode
如果你正在觀看主工作簿中發生的變化,你應該把這個代碼放在裏面。 –