宏与文本变量更改列

时间:2015-10-06 19:45:31

标签: excel excel-vba vba

宏工作正常,直到文本位置更改列。我正在使用“查找”文本字符串,然后想要向右和向下移动光标2,然后将数据复制到另一个工作表。宏工作得很好,直到文本字符串在后续电子表格中移动。

如何根据找到文本字符串的位置使所选范围变量?
在下面的示例中,如何让Range("H7:H180").Select变量?

Range("A1").Select
Cells.Find(What:="reg", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
Range("H7:H180").Select

1 个答案:

答案 0 :(得分:1)

Dim wks As Worksheet
Dim rngFound as Range

Set wks = Sheets("Sheet1") ' adjust for your sheet name
Set rngFound = wks.Cells.Find(What:="reg", After:=Range("A1"), LookIn:=xlFormulas, LookAt:= _
xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False)

If Not rngFound is Nothing Then rngFound.Offset(2,1).Copy Sheets("Sheet2").Range("A1") 'adjust the destination to fit what you need

无需选择任何内容。您可以直接使用单元格。另外,不确定要复制到其他工作表的位置,但您可以根据需要调整复制目的地。