How to use variables to define range

D

Dolemite

I have been digging through this forum for the last day or so in hopes
of finding a solution so as not to repeat a question, but have been
unsuccessful.

I am trying to define a range via variables with (row,column) format
instead of explicitly naming the range.

i.e.- set myrange =
worksheets("sheet1").range(row1,column1:row2,column2)
where row1, row2, column1, column2 are variables

instead of set myrange = worksheets("sheet1").range("a1:b2")

I can't seem to get the syntax correct, and I cannot figure out what I
am missing.
I can name it explicitly without a problem, but my range changes
constantly and I don't want to have to change the code everytime. Any
help would be greatly appreciated.

Thanks in advance.

Drew
 
J

Jim Thomlinson

Something like this...

Sub Test()
Dim myRange As Range

With Sheets("Sheet1")
Set myRange = Range(.Cells(1, 1), .Cells(2, 2))
End With

myRange.Select
End Sub
 
K

Kanan

I don't know if the following sample helps:

Dim tstring As String
Wsheet.Select
If Wsheet.Range(fromcol & CStr(x)).Value <> "NULL" And _
Wsheet.Range(tocol & CStr(x)).Value <> "NULL" Then
Fvalue = Wsheet.Range(fromcol & CStr(x)).Value - Wsheet.Range(tocol &
CStr(x)).Value
tstring = fromcol & CStr(x) & ":" & tocol & CStr(x)
If Fvalue > 500 Or Fvalue < -500 Then
Range(tstring).Select
Selection.Interior.ColorIndex = 3
Selection.Font.Bold = True
 
A

Alan Beban

Or, if the code is in a general module

Dim myRange As Range
Set myRange = Sheets("Sheet1").Range("A1")
Range(myRange(1, 1), myRange(2, 2)).Select

Because of limitations on the Select Method, Sheet1 must be the active
sheet, both with the above and with Jim Thomlinson's suggested code below.

Alan Beban
 

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