2015-10-06 93 views
0

宏很好,直到文本的位置改變列。我使用「查找」文本字符串,然後想要將光標向右和向下移動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
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 

無需進行任何選擇。您可以直接使用單元格。此外,不確定要複製到其他工作表的哪個位置,但可以根據需要調整複製目的地。

+0

謝謝斯科特。我不是編碼員,所以這是我的頭。我會盡力弄清楚。 –

+0

這段代碼適合你嗎?如果你仍然有問題,可以自由地提問,或者發佈另一個問題,如果它與這個問題大不相同。 –

+0

不幸的是,它沒有。有沒有辦法向您發送示例電子表格? –