#1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 13
Default column loop

How can I change the column charater in a loop for the following:

If iKN = 1 Then Set CellRangePMR = Worksheets("PM").Range("C6:c" & PMR + 5)
If iKN = 2 Then Set CellRangePMR = Worksheets("PM").Range("d6:d" & PMR + 5)
If iKN = 3 Then Set CellRangePMR = Worksheets("PM").Range("e6:e" & PMR + 5)
If iKN = 4 Then Set CellRangePMR = Worksheets("PM").Range("f6:f" & PMR + 5)
If iKN = 5 Then Set CellRangePMR = Worksheets("PM").Range("g6:g" & PMR + 5)
If iKN = 6 Then Set CellRangePMR = Worksheets("PM").Range("h6:h" & PMR + 5)

Best regards,

Gijs
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default column loop

Dim CellRangePMR As Range
Dim iKN As Long
Dim PMR As Long

'testing purposes
iKN = 1
PMR = 8

Set CellRangePMR = Nothing
Select Case iKN
Case Is = 1, 2, 3, 4, 5, 6
With Worksheets("PM")
Set CellRangePMR = .Range(.Cells(6, 2 + iKN), .Cells(PMR + 5, 2 + iKN))
'or
Set CellRangePMR = .Cells(6, 2 + iKN).Resize(PMR + 5 - 6 + 1, 1)
'or doing the arithmetic
Set CellRangePMR = .Cells(6, 2 + iKN).Resize(PMR, 1)
End With
End Select

If CellRangePMR Is Nothing Then
MsgBox "oh, oh"
Else
MsgBox CellRangePMR.Address(0, 0)
End If
Gijs Breedveld wrote:

How can I change the column charater in a loop for the following:

If iKN = 1 Then Set CellRangePMR = Worksheets("PM").Range("C6:c" & PMR + 5)
If iKN = 2 Then Set CellRangePMR = Worksheets("PM").Range("d6:d" & PMR + 5)
If iKN = 3 Then Set CellRangePMR = Worksheets("PM").Range("e6:e" & PMR + 5)
If iKN = 4 Then Set CellRangePMR = Worksheets("PM").Range("f6:f" & PMR + 5)
If iKN = 5 Then Set CellRangePMR = Worksheets("PM").Range("g6:g" & PMR + 5)
If iKN = 6 Then Set CellRangePMR = Worksheets("PM").Range("h6:h" & PMR + 5)

Best regards,

Gijs


--

Dave Peterson
  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default column loop

These statements replace the 6 If-Then statements you posted....

If iKN 0 And iKN < 7 Then
Set CellRangePMR = Worksheets("PM").Range(Chr(66 + iKN) & _
"6:" & Chr(66 + iKNX) & CStr(PMR + 5))
End If

If the only values for iKN are 1 through 6 (for example, if they are being
generated by a loop counter), then you don't need the If-Then or End If
statements.

Rick


"Gijs Breedveld" wrote in message
...
How can I change the column charater in a loop for the following:

If iKN = 1 Then Set CellRangePMR = Worksheets("PM").Range("C6:c" & PMR +
5)
If iKN = 2 Then Set CellRangePMR = Worksheets("PM").Range("d6:d" & PMR +
5)
If iKN = 3 Then Set CellRangePMR = Worksheets("PM").Range("e6:e" & PMR +
5)
If iKN = 4 Then Set CellRangePMR = Worksheets("PM").Range("f6:f" & PMR +
5)
If iKN = 5 Then Set CellRangePMR = Worksheets("PM").Range("g6:g" & PMR +
5)
If iKN = 6 Then Set CellRangePMR = Worksheets("PM").Range("h6:h" & PMR +
5)

Best regards,

Gijs


  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default column loop

My side comment about the iKN values being generated by a loop counter is
misleading. What I meant to say...

For any given value of iKN, the single Set statement will generate the
correct cell range to be assigned to CellRangePMR... the If-Then "housing"
is there just to make sure the value of iKN is in range. If your method of
assigning a value to iKN is such that you will always know it is in range,
then you don't have to check for that with the If-Then statement I
provided... just use the single-line Set statement and you are done.

Rick


"Rick Rothstein (MVP - VB)" wrote in
message ...
These statements replace the 6 If-Then statements you posted....

If iKN 0 And iKN < 7 Then
Set CellRangePMR = Worksheets("PM").Range(Chr(66 + iKN) & _
"6:" & Chr(66 + iKNX) & CStr(PMR + 5))
End If

If the only values for iKN are 1 through 6 (for example, if they are being
generated by a loop counter), then you don't need the If-Then or End If
statements.

Rick


"Gijs Breedveld" wrote in
message ...
How can I change the column charater in a loop for the following:

If iKN = 1 Then Set CellRangePMR = Worksheets("PM").Range("C6:c" & PMR +
5)
If iKN = 2 Then Set CellRangePMR = Worksheets("PM").Range("d6:d" & PMR +
5)
If iKN = 3 Then Set CellRangePMR = Worksheets("PM").Range("e6:e" & PMR +
5)
If iKN = 4 Then Set CellRangePMR = Worksheets("PM").Range("f6:f" & PMR +
5)
If iKN = 5 Then Set CellRangePMR = Worksheets("PM").Range("g6:g" & PMR +
5)
If iKN = 6 Then Set CellRangePMR = Worksheets("PM").Range("h6:h" & PMR +
5)

Best regards,

Gijs



Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Loop Column Lisa Excel Discussion (Misc queries) 2 July 17th 07 06:14 PM
Loop through column headers to search from column name and get cell range Pie Excel Programming 9 December 29th 05 12:17 AM
Loop through Column and add hyperlink Dave Peterson Excel Programming 1 December 9th 05 05:52 AM
Loop Column letter A to Z ?? al007 Excel Programming 16 November 15th 05 09:31 AM
HOW-TO? Loop through cells in a column Mr. Clean[_2_] Excel Programming 4 December 12th 03 08:28 PM


All times are GMT +1. The time now is 02:25 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"