ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Check value on another sheet (https://www.excelbanter.com/excel-programming/396846-check-value-another-sheet.html)

Brad

Check value on another sheet
 
Thanks for taking the time to read my question.

I have 2 sheets and am on the first one. The Second one "qcust" has my data
on it and I want to go through it row by row until there is no data left.

Why can't I do this? It gives me an application error

Do Until Worksheets("qcust").Cells(TheRow, TheCol) = ""

Here is the full code.

Sub MergeAndPrint()
Dim TheRow As Integer

TheRow = 2

Worksheets("qcust").Select

Do Until Worksheets("qcust").Cells(TheRow, TheCol) = ""
Range("D3") = Sheets("qcust").Cells(TheRow, 2).Value
Range("D4") = Sheets("qcust").Cells(TheRow, 3).Value
Range("D8") = Sheets("qcust").Cells(TheRow, 1).Value

TheRow = TheRow + 1
Loop

MsgBox "Complete"

End Sub

Thanks,

Brad

barnabel

Check value on another sheet
 
3 things,
1) TheCol is never set so it is checking Column 0 which is invalid
2) You don't want to select the "qcust" sheet
3) TheRow should be a long. There may not be 32,000 rows but it is a good
habit to make row index varialbles longs.

Peter Richardson

"Brad" wrote:

Thanks for taking the time to read my question.

I have 2 sheets and am on the first one. The Second one "qcust" has my data
on it and I want to go through it row by row until there is no data left.

Why can't I do this? It gives me an application error

Do Until Worksheets("qcust").Cells(TheRow, TheCol) = ""

Here is the full code.

Sub MergeAndPrint()
Dim TheRow As Integer

TheRow = 2

Worksheets("qcust").Select

Do Until Worksheets("qcust").Cells(TheRow, TheCol) = ""
Range("D3") = Sheets("qcust").Cells(TheRow, 2).Value
Range("D4") = Sheets("qcust").Cells(TheRow, 3).Value
Range("D8") = Sheets("qcust").Cells(TheRow, 1).Value

TheRow = TheRow + 1
Loop

MsgBox "Complete"

End Sub

Thanks,

Brad


Vergel Adriano

Check value on another sheet
 
Brad,

The variable TheCol is not defined/initialized. Try:

Do Until Worksheets("qcust").Cells(TheRow, 1) = ""



--
Hope that helps.

Vergel Adriano


"Brad" wrote:

Thanks for taking the time to read my question.

I have 2 sheets and am on the first one. The Second one "qcust" has my data
on it and I want to go through it row by row until there is no data left.

Why can't I do this? It gives me an application error

Do Until Worksheets("qcust").Cells(TheRow, TheCol) = ""

Here is the full code.

Sub MergeAndPrint()
Dim TheRow As Integer

TheRow = 2

Worksheets("qcust").Select

Do Until Worksheets("qcust").Cells(TheRow, TheCol) = ""
Range("D3") = Sheets("qcust").Cells(TheRow, 2).Value
Range("D4") = Sheets("qcust").Cells(TheRow, 3).Value
Range("D8") = Sheets("qcust").Cells(TheRow, 1).Value

TheRow = TheRow + 1
Loop

MsgBox "Complete"

End Sub

Thanks,

Brad


Jim Rech

Check value on another sheet
 
It gives me an application error

Always good to be very specific (the text of the error message, not just its
number)

Have you set a value for TheCol? If not it's 0 which is not a valid column
number.

--
Jim
"Brad" wrote in message
...
| Thanks for taking the time to read my question.
|
| I have 2 sheets and am on the first one. The Second one "qcust" has my
data
| on it and I want to go through it row by row until there is no data left.
|
| Why can't I do this? It gives me an application error
|
| Do Until Worksheets("qcust").Cells(TheRow, TheCol) = ""
|
| Here is the full code.
|
| Sub MergeAndPrint()
| Dim TheRow As Integer
|
| TheRow = 2
|
| Worksheets("qcust").Select
|
| Do Until Worksheets("qcust").Cells(TheRow, TheCol) = ""
| Range("D3") = Sheets("qcust").Cells(TheRow, 2).Value
| Range("D4") = Sheets("qcust").Cells(TheRow, 3).Value
| Range("D8") = Sheets("qcust").Cells(TheRow, 1).Value
|
| TheRow = TheRow + 1
| Loop
|
| MsgBox "Complete"
|
| End Sub
|
| Thanks,
|
| Brad



Brad

Check value on another sheet
 
Thanks Vergel,

Sometimes another set of eyes helps. I thought I got rid of all of those.

Thanks again,

Brad

"Vergel Adriano" wrote:

Brad,

The variable TheCol is not defined/initialized. Try:

Do Until Worksheets("qcust").Cells(TheRow, 1) = ""



--
Hope that helps.

Vergel Adriano


"Brad" wrote:

Thanks for taking the time to read my question.

I have 2 sheets and am on the first one. The Second one "qcust" has my data
on it and I want to go through it row by row until there is no data left.

Why can't I do this? It gives me an application error

Do Until Worksheets("qcust").Cells(TheRow, TheCol) = ""

Here is the full code.

Sub MergeAndPrint()
Dim TheRow As Integer

TheRow = 2

Worksheets("qcust").Select

Do Until Worksheets("qcust").Cells(TheRow, TheCol) = ""
Range("D3") = Sheets("qcust").Cells(TheRow, 2).Value
Range("D4") = Sheets("qcust").Cells(TheRow, 3).Value
Range("D8") = Sheets("qcust").Cells(TheRow, 1).Value

TheRow = TheRow + 1
Loop

MsgBox "Complete"

End Sub

Thanks,

Brad



All times are GMT +1. The time now is 05:37 PM.

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