1
我想查找某個列中具有字符串(例如名稱)的單元格,將列中相應的單元格複製到其右側(即偏移量(0, 1)),然後將其粘貼到不同工作表中的列中。我有以下代碼來查找我想要的範圍變量。但是,我不能從另一張紙上選擇它!
當我使用Sheets(1).MyRange.Copy
時,它不接受它。我是否以錯誤的方式提及範圍?我究竟做錯了什麼?複製/粘貼具有特定字符串的單元格旁邊的單元格
下面是我用它來獲取代碼MyRange:
Option Explicit
Sub SelectByValue(Rng1 As Range, Value As Double)
Dim MyRange As Range
Dim Cell As Object
'Check every cell in the range for matching criteria.
For Each Cell In Rng1
If Cell.Value = Value Then
If MyRange Is Nothing Then
Set MyRange = Range(Cell.Address)
Else
Set MyRange = Union(MyRange, Range(Cell.Address))
End If
End If
Next
End Sub
Sub CallSelectByValue()
'Call the macro and pass all the required variables to it.
'In the line below, change the Range, Minimum Value, and Maximum Value as needed
Call SelectByValue(Sheets(1).Range("A1:A20"), "Tom")
End Sub
一個問題:與其指定的確切範圍看(例如,「A1:A20」),我很想看看所有的A列。但我不想使用(「A:A」),因此它不會查看A的所有行。是不是有一種方法僅查看列A中具有條目的單元格?
非常感謝你。
鋁
喜添,感謝您的答覆。關於第一點,我實際上在sheet2中運行這個宏,但是我需要將相應的MyRange從Sheet1複製到Sheet2中。當我使用表格(1).MyRange.Copy時,它不起作用。你知道寫它的正確方法嗎? –
爲了清楚起見,我們假設MyRange是(B1:B4),我希望能夠從我使用的任何工作表複製此MyRange(例如,工作表1或工作表3中的「B1:B4」,或者..等等。 ) –
如果您想複製MyRange,那麼只需使用MyRange.Copy您不需要表單限定符。 –