ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Can I use array to simplify this code. (https://www.excelbanter.com/excel-programming/325680-can-i-use-array-simplify-code.html)

broogle

Can I use array to simplify this code.
 
Sorry for the mess in the previous posting.

Can I use array to simplify this code.
Appreciate your help. Thanks

sub test()
Dim rngJ As Range
Dim rngK As Range
Dim rngL As Range
..
..
..
For Each Cell In rngK
---code---
next

For Each Cell In rngL
---code--- (same as above)
next

For Each Cell In rngM
---code--- (same as above)
next
..
..
..
end sub

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

Notes: rngK, rngL and rngM located in different sheets.


OJ[_2_]

Can I use array to simplify this code.
 
Hi,
I'm not sure about an array but you could use a function for the
----code---(same as above) parts of your loop...

Function MyFunction(rngCell as Range) as Range
----code----
End Function

This would simplify your code and reduce duplicity.
Hth,
OJ


Ed Ferrero[_5_]

Can I use array to simplify this code.
 
Hi broogle,

Try something like...

Sub test()

Dim rngArr(3) As Variant
Dim rng As Variant

' populate the array
Set rngArr(1) = Worksheets(1).Range("A1:A5")
Set rngArr(3) = Worksheets(1).Range("C1:C5")

For Each rng In rngArr
' because we have declared a variant array, we can test for empty members
If Not IsEmpty(rng) Then
' do something... (place your own codew here)
MsgBox rng.Address
End If
Next

End Sub

Ed Ferrero

Can I use array to simplify this code.
Appreciate your help. Thanks

sub test()
Dim rngJ As Range
Dim rngK As Range
Dim rngL As Range
.
.
.
For Each Cell In rngK
---code---
next

For Each Cell In rngL
---code--- (same as above)
next

For Each Cell In rngM
---code--- (same as above)
next
.
.
.
end sub

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

Notes: rngK, rngL and rngM located in different sheets.




Tom Ogilvy

Can I use array to simplify this code.
 
You received two good answers to your original post.

--
Regards,
Tom Ogilvy

"broogle" wrote in message
oups.com...
Sorry for the mess in the previous posting.

Can I use array to simplify this code.
Appreciate your help. Thanks

sub test()
Dim rngJ As Range
Dim rngK As Range
Dim rngL As Range
.
.
.
For Each Cell In rngK
---code---
next

For Each Cell In rngL
---code--- (same as above)
next

For Each Cell In rngM
---code--- (same as above)
next
.
.
.
end sub

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

Notes: rngK, rngL and rngM located in different sheets.





All times are GMT +1. The time now is 01:30 PM.

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