我正在尝试使用宏(VBA)来搜索所有A列以及#34;东部会议"然后使该单元成为活动单元。当数据由Web查询填充时,东部会议的位置会发生变化。我最初记录了一个CNTL + F函数,它在作为宏运行时起作用,但是当我将它分配给一个按钮时,我得到了一个运行时错误。非常感谢任何帮助!
所以这就是我到目前为止所拥有的。我在A栏中寻找东部会议,然后将信息复制到它周围(50行以下和右边26列)到一个新的位置,这样如果它根据行从一行移动到另一行并不重要。网络查询结果。我在DA100的参考单元中有东部会议,因为当我只是在脚本中使用文本时我无法做任何事情 - 我只是担心它会在AA1单元格中找到复制的东部会议然后基本粘贴每次都是。所以我想确保它只在A列中查找来自DA100("东部会议")的文本 - 这样它就永远不会在AA1单元格或DA100单元格中找到它并复制错误的数据
由于
Sub STANDINGS_FIX()
'
' STANDINGS_FIX Macro
'
'
Sheets("STANDINGS_DATA").Select
Range("A40").Select
Dim SearchValue As String
SearchValue = "*" & Range("DA100").Value & "*"
Cells.Find(What:=SearchValue, After:=ActiveCell, LookIn:=xlValues, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
Cells.FindNext(After:=ActiveCell).Activate
ActiveCell.Resize(50, 26).Copy
Range("AA1").Select
ActiveSheet.Paste
Sheets("EVENT INFORMATION").Select
MsgBox "STANDINGS UPDATED!!!"
End Sub
答案 0 :(得分:0)
录制的宏代码可以让您开始寻求解决方案,但它很少适合所有情况。工作表的查找操作( Ctrl + F )从上次使用时记住了几个选项,这些选项需要重置为适合您情况的操作参数。 / p>
另一个选项是精确或通配符匹配A列,寻找术语“东部会议”。
With activesheet
'Exact match (e.g. Eastern Conference):
.cells(application.match("Eastern Conference", .columns("A"), 0), "A").select
'Wildcard match (e.g. 2014 Eastern Conference Finals):
.cells(application.match("*Eastern Conference*", .columns("A"), 0), "A").select
end with
其中一个应该会激活正确的细胞。
当您的代码正常运行时,请考虑在Code Review - Excel上发布一些代码,以获取有助于远离.Select
和ActiveCell
的帮助,以支持直接小区寻址和引用。