ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   How to "return" the array element number in VBA (https://www.excelbanter.com/excel-discussion-misc-queries/122399-how-return-array-element-number-vba.html)

EagleOne

How to "return" the array element number in VBA
 
2003

Challenge:

For Each myCell in myRange
.....
.....
'Would like to be able to move to the next myCell in a (non-contiguous)
'myRange if the current myCell.Value = 0. I do not know how to return
'the current myCell array element number AND to increment to the next
'non-zero "0" myCell.value
.....
.......
Next myCell


Jim Thomlinson

How to "return" the array element number in VBA
 
I think you are going to have a problem here... You are in a "For Each"
statement which by it's very nature requires you to go through each and every
element... No skipping allowed...
--
HTH...

Jim Thomlinson


"EagleOne" wrote:

2003

Challenge:

For Each myCell in myRange
.....
.....
'Would like to be able to move to the next myCell in a (non-contiguous)
'myRange if the current myCell.Value = 0. I do not know how to return
'the current myCell array element number AND to increment to the next
'non-zero "0" myCell.value
.....
.......
Next myCell



Dave Peterson

How to "return" the array element number in VBA
 
Maybe you don't have to move at all. Maybe you can just do the work you want on
the non-zero values.

dim myCell as range
dim myRange as range

'set myRange = somerangehere

for each mycell in myrange.cells
if mycell.value = 0 then
'do nothing
else
mycell.value = mycell.value + 1 'whatever increment
end if
next mycell



EagleOne wrote:

2003

Challenge:

For Each myCell in myRange
....
....
'Would like to be able to move to the next myCell in a (non-contiguous)
'myRange if the current myCell.Value = 0. I do not know how to return
'the current myCell array element number AND to increment to the next
'non-zero "0" myCell.value
....
......
Next myCell


--

Dave Peterson

EagleOne

How to "return" the array element number in VBA
 
No wonder I could not find out how to skip!

Thanks Jim


Jim Thomlinson wrote:
I think you are going to have a problem here... You are in a "For Each"
statement which by it's very nature requires you to go through each and every
element... No skipping allowed...
--
HTH...

Jim Thomlinson


"EagleOne" wrote:

2003

Challenge:

For Each myCell in myRange
.....
.....
'Would like to be able to move to the next myCell in a (non-contiguous)
'myRange if the current myCell.Value = 0. I do not know how to return
'the current myCell array element number AND to increment to the next
'non-zero "0" myCell.value
.....
.......
Next myCell




EagleOne

How to "return" the array element number in VBA
 
Thanks Dave. It has been a tough week. I did not see the forest for
the trees.

BTW, your guidance this week or so, is/was greatly appreciated

Dennis

Dave Peterson wrote:
Maybe you don't have to move at all. Maybe you can just do the work you want on
the non-zero values.

dim myCell as range
dim myRange as range

'set myRange = somerangehere

for each mycell in myrange.cells
if mycell.value = 0 then
'do nothing
else
mycell.value = mycell.value + 1 'whatever increment
end if
next mycell



EagleOne wrote:

2003

Challenge:

For Each myCell in myRange
....
....
'Would like to be able to move to the next myCell in a (non-contiguous)
'myRange if the current myCell.Value = 0. I do not know how to return
'the current myCell array element number AND to increment to the next
'non-zero "0" myCell.value
....
......
Next myCell


--

Dave Peterson




All times are GMT +1. The time now is 06:22 PM.

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