Loop and extend selection

S

staeri

I have the following values in the A column:
1
2
2
2
3
3

I want to loop through the values by starting in cell A1 and extend the
selection as long as the values are the same. That means in the above
example that all the cells with the value 2 should be selected. How can
I do that?

I'm very grateful for fast answer!

Regards,

S
 
J

John Fuller

I don't understand what you're asking for. My understanding of what
you've said is I select cell A1 (with a value of 1) and extend the
selection till it changes. This means I would end with just cell A1
seleced. If I had:

1
1
1
2
2

The I would end with A1:A3 selected. Please clarify so we can help.
 
S

Sandy

Here try this to start you off. This will choose multiple cells
throughout Column A


Sub MyMultiSelect()
Dim mycells As Object, myrange As Range, MyString As String
Set myrange = [A:A]
For Each mycells In myrange
If mycells.Value = [a1] Then
If MyString = Empty Then
MyString = mycells.Address
Else
MyString = MyString & ", " & mycells.Address
End If
End If
Next
Range(MyString).Select
End Sub
 
S

Sandy

Sorry, I copied the wrong code. The previous code will loop through and
find all values matching Range A1 in the whole Column A, this code will
stop once the value changes in column A. As you can see it's the same
code with just a If...Then statement telling itself to stop the
For...Next once the two values are different

Cheers,

Sandy

Sub MyMultiSelect()
Dim mycells As Object, myrange As Range, MyString As String
Set myrange = [A:A]
For Each mycells In myrange
'Exit if values are different
If Not mycells.Value = [A1] Then Exit For
If mycells.Value = [A1] Then
If MyString = Empty Then
MyString = mycells.Address
Else
MyString = MyString & ", " & mycells.Address
End If
End If
Next
Range(MyString).Select
End Sub
Here try this to start you off. This will choose multiple cells
throughout Column A


Sub MyMultiSelect()
Dim mycells As Object, myrange As Range, MyString As String
Set myrange = [A:A]
For Each mycells In myrange
If mycells.Value = [a1] Then
If MyString = Empty Then
MyString = mycells.Address
Else
MyString = MyString & ", " & mycells.Address
End If
End If
Next
Range(MyString).Select
End Sub


You are correct. I didn't explain it as I should!

Regards,

S

John Fuller skrev:
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top