ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Do while loop error.... (https://www.excelbanter.com/excel-programming/379192-do-while-loop-error.html)

guy

Do while loop error....
 
hello, i am a beginner...Thank you for your help!!

the inner loop was highlighted (compile error), but i don't know what's
wrong here
ps: i want to map the price in J5:J25 to the corresponding cells in
E5:E19...

__________________________________________________ _____________________________________
Sub MapPrice()

Dim i, j As Integer
Dim selection_v, selection_p As Range

i = 5
j = 5
selection_v = Range("C5:E19")
selection_p = Range("H5:J25")

Do While j <= selection_v.Rows.Count + 4

Do While i <= selection_p.Rows.Count + 4

If Range("H" & i).Value & Range("I" & i).Value = Range("C" &
j).Value & Range("D" & j).Value Then
Range("J" & i).Copy Destination:=Range("E" & j)

i = i + 1

Loop

If isBlank(Range("E" & j).Value) Then
Range("E" & j).Value = "Not found"

i = 5
j = j + 1

Loop

End Sub



Jim Cone

Do while loop error....
 

You are missing "End If" in two places and "IsBlank" cannot be used
in VBA code. I substituted the Len function.
Row variables should be declared as a Long.
(you may want to do something in the bottom half of the sheet sometime)

It looks like you may not get the results you want; give it a try
and find out.
--
Jim Cone
San Francisco, USA
http://www.realezsites.com/bus/primitivesoftware

Sub MapPrice()
Dim i As Long
Dim j As Long
Dim selection_v As Range, selection_p As Range

i = 5
j = 5
selection_v = Range("C5:E19")
selection_p = Range("H5:J25")

Do While j <= selection_v.Rows.Count + 4
Do While i <= selection_p.Rows.Count + 4
If Range("H" & i).Value & Range("I" & i).Value = _
Range("C" & j).Value & Range("D" & j).Value Then
Range("J" & i).Copy Destination:=Range("E" & j)
i = i + 1
End If
Loop

If Len(Range("E" & j).Value) 0 Then
Range("E" & j).Value = "Not found"
i = 5
j = j + 1
End If
Loop
End Sub
'------------


"guy"
wrote in message
hello, i am a beginner...Thank you for your help!!
the inner loop was highlighted (compile error), but i don't know what's
wrong here
ps: i want to map the price in J5:J25 to the corresponding cells in
E5:E19...
____________
Sub MapPrice()

Dim i, j As Integer
Dim selection_v, selection_p As Range

i = 5
j = 5
selection_v = Range("C5:E19")
selection_p = Range("H5:J25")

Do While j <= selection_v.Rows.Count + 4

Do While i <= selection_p.Rows.Count + 4

If Range("H" & i).Value & Range("I" & i).Value = Range("C" &
j).Value & Range("D" & j).Value Then
Range("J" & i).Copy Destination:=Range("E" & j)

i = i + 1

Loop

If isBlank(Range("E" & j).Value) Then
Range("E" & j).Value = "Not found"

i = 5
j = j + 1

Loop

End Sub



Jim Cone

Do while loop error....
 
This line ...
If Len(Range("E" & j).Value) 0 Then
Should be ...
If Len(Range("E" & j).Value) = 0 Then
--
Jim Cone

guy

Do while loop error....
 
Thanks!!
"Jim Cone"
...
This line ...
If Len(Range("E" & j).Value) 0 Then
Should be ...
If Len(Range("E" & j).Value) = 0 Then
--
Jim Cone




guy

Do while loop error....
 
Thanks!!
"Jim Thomlinson" ...
Without looking too closely it appears as if your inner loop is missing an
end if...

If Range("H" & i).Value & Range("I" & i).Value = Range("C" &
j).Value & Range("D" & j).Value Then
Range("J" & i).Copy Destination:=Range("E" & j)
end if '???
--
HTH...

Jim Thomlinson


"guy" wrote:

hello, i am a beginner...Thank you for your help!!

the inner loop was highlighted (compile error), but i don't know what's
wrong here
ps: i want to map the price in J5:J25 to the corresponding cells in
E5:E19...

__________________________________________________ _____________________________________
Sub MapPrice()

Dim i, j As Integer
Dim selection_v, selection_p As Range

i = 5
j = 5
selection_v = Range("C5:E19")
selection_p = Range("H5:J25")

Do While j <= selection_v.Rows.Count + 4

Do While i <= selection_p.Rows.Count + 4

If Range("H" & i).Value & Range("I" & i).Value = Range("C" &
j).Value & Range("D" & j).Value Then
Range("J" & i).Copy Destination:=Range("E" & j)

i = i + 1

Loop

If isBlank(Range("E" & j).Value) Then
Range("E" & j).Value = "Not found"

i = 5
j = j + 1

Loop

End Sub







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

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