ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Nested loop order? (https://www.excelbanter.com/excel-programming/335899-nested-loop-order.html)

jclark419[_4_]

Nested loop order?
 

Hey everyone, another bit of code here and I want to make sure this is
going to run in the order that I think it will. It consists of a
"nested" for loop. I would like it to run the outer one one time for
every 9 times the inner one runs. In other words I have one for loop
representing the column value and the inner for loop represented the
row value. I want it to perform the calculations for one column at a
time all the way down before it moves to the next. Here is the code:


Code:
--------------------

Public Function results() As Double

Dim answers(9, 9) As Double
Dim i, j, component As intger

For i = 20 To 29

For j = 7 To 15

ThisWorkbook.Worksheets("Calculations").Cells(i, j).Select
component = ThisWorkbook.Worksheets("Calculations").Cells(Acti veCell.row, 6).Value

Select Case component
Case 1

Case 2

Case Else

Next j

Next i

End Function

--------------------


Ignore the select case command I am not too concerned with that right
now, just the for loops.

Thanks.

~Jason


--
jclark419
------------------------------------------------------------------------
jclark419's Profile: http://www.excelforum.com/member.php...o&userid=25430
View this thread: http://www.excelforum.com/showthread...hreadid=391360


Tom Ogilvy

Nested loop order?
 
For i = 20 To 29
For j = 7 To 15
ThisWorkbook.Worksheets("Calculations").Cells(i, j).Select
Next j
Next i

as written, this works row by row across all columns (change a row, work on
columns 7 to 15)

perhaps you meant
.Cells(j,i).Select

otherwise you would reverse the loops

For j= 7 To 15
For i= 20 To 29
ThisWorkbook.Worksheets("Calculations").Cells(i, j).Select
Next i
Next j

--
Regards,
Tom Ogilvy


"jclark419" wrote
in message ...

Hey everyone, another bit of code here and I want to make sure this is
going to run in the order that I think it will. It consists of a
"nested" for loop. I would like it to run the outer one one time for
every 9 times the inner one runs. In other words I have one for loop
representing the column value and the inner for loop represented the
row value. I want it to perform the calculations for one column at a
time all the way down before it moves to the next. Here is the code:


Code:
--------------------

Public Function results() As Double

Dim answers(9, 9) As Double
Dim i, j, component As intger

For i = 20 To 29

For j = 7 To 15

ThisWorkbook.Worksheets("Calculations").Cells(i, j).Select
component =

ThisWorkbook.Worksheets("Calculations").Cells(Acti veCell.row, 6).Value

Select Case component
Case 1

Case 2

Case Else

Next j

Next i

End Function

--------------------


Ignore the select case command I am not too concerned with that right
now, just the for loops.

Thanks.

~Jason


--
jclark419
------------------------------------------------------------------------
jclark419's Profile:

http://www.excelforum.com/member.php...o&userid=25430
View this thread: http://www.excelforum.com/showthread...hreadid=391360




Bernie Deitrick

Nested loop order?
 
Jason,

The looping is fine: it is your other code that worries me: you don't do anything with the cell
after you select it except pick up the value from column F of its row, so why loop through the
columns?

HTH,
Bernie
MS Excel MVP


"jclark419" wrote in message
...

Hey everyone, another bit of code here and I want to make sure this is
going to run in the order that I think it will. It consists of a
"nested" for loop. I would like it to run the outer one one time for
every 9 times the inner one runs. In other words I have one for loop
representing the column value and the inner for loop represented the
row value. I want it to perform the calculations for one column at a
time all the way down before it moves to the next. Here is the code:


Code:
--------------------

Public Function results() As Double

Dim answers(9, 9) As Double
Dim i, j, component As intger

For i = 20 To 29

For j = 7 To 15

ThisWorkbook.Worksheets("Calculations").Cells(i, j).Select
component = ThisWorkbook.Worksheets("Calculations").Cells(Acti veCell.row, 6).Value

Select Case component
Case 1

Case 2

Case Else

Next j

Next i

End Function

--------------------


Ignore the select case command I am not too concerned with that right
now, just the for loops.

Thanks.

~Jason


--
jclark419
------------------------------------------------------------------------
jclark419's Profile: http://www.excelforum.com/member.php...o&userid=25430
View this thread: http://www.excelforum.com/showthread...hreadid=391360





All times are GMT +1. The time now is 03:30 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com