我想解决这个问题应该有一个简单的方法,但我还没有清楚地看到它。
每次我在表格中更改任何单元格时,都会触发下面的代码:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Target.Worksheet.Range("A:S")) Is Nothing Then
copy_column
End Sub
这段代码运行了我的copy_column
宏(将原始表格中的某些列复制到另一个表格中)。第一段代码是因为我想在源表格更改时自动更新目标表格。
Sub copy_column()
Set origem = Sheets("FUNCIONÁRIOS").Range("A4:C1040000")
Set destino = Sheets("BASE_TOTAL").Range("A2")
origem.Copy
destino.PasteSpecial Paste:=xlPasteValues
Set origem_subs = Sheets("FUNCIONÁRIOS").Range("S4:S1040000")
Set destino_subs = Sheets("BASE_TOTAL").Range("J2")
origem_subs.Copy
destino_subs.PasteSpecial Paste:=xlPasteValues
Set origem_ini_fer = Sheets("FUNCIONÁRIOS").Range("L4:L1040000")
Set destino_ini_fer = Sheets("BASE_TOTAL").Range("H2")
origem_ini_fer.Copy
destino_ini_fer.PasteSpecial Paste:=xlPasteValues
Set origem_fim_fer = Sheets("FUNCIONÁRIOS").Range("P4:P1040000")
Set destino_fim_fer = Sheets("BASE_TOTAL").Range("I2")
origem_fim_fer.Copy
destino_fim_fer.PasteSpecial Paste:=xlPasteValues
End Sub
当我的宏完成后,它会保留最后复制的列并将其选中,就像这样:是否有办法在结束时取消选定此列?
application.cutcopymode = false
。 - VityataCells(1,1).Select
来选择A1
,或者Application.CutCopyMode = False
。 - BruceWayne