【发布时间】:2019-10-11 17:03:20
【问题描述】:
我正在尝试制作一个宏来读取我设置的某些单词(在特定的 excel 工作表中)我去一个新的 excel 工作表中一个一个地重写它们......我正在附上代码......给我这个错误我该如何解决?
Sub Macro1()
'
' Macro1 Macro
'
Ricerca = "Lingua"
Campo = 5
'
Range("A1").Select
Cells.Find(What:=Ricerca, After:=ActiveCell, LookIn:=xlFormulas _
, LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=True, SearchFormat:=False).Activate
ActiveCell.Offset(1, 0).Range("A1").Select
Selection.Copy
Selection.Copy
Sheets("Foglio1").Select
ActiveCell.Offset(1, Campo).Range("A1").Select
ActiveSheet.Paste
For indexA = 1 To 202
Sheets("CLIENTI per xls").Select
Cells.Find(What:=Ricerca, After:=ActiveCell, LookIn:=xlFormulas _
, LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=True, SearchFormat:=False).Activate
ActiveCell.Offset(1, 0).Range("A1").Select
Application.CutCopyMode = False
Selection.Copy
Application.CutCopyMode = False
Selection.Copy
Sheets("Foglio1").Select
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveSheet.Paste
Next indexA
End Sub
【问题讨论】:
-
您的代码与所有
Selects 和Activate的代码混淆了。我建议您首先将Option Explicit放在顶部(这将需要变量声明),并重写它以摆脱不需要的选择和激活。见How to avoid using Select in VBA。然后,您没有声明的任何内容都应该变得清楚。哦,当你告诉我们一个错误时,告诉我们哪一行产生了错误也很重要。 -
如果没有找到单元格,则不能使用
Activate
标签: excel vba visual-studio replace find