Macro error - cant work it out...

N

NPell

Dim icon As Variant
Dim myicon As Variant
myicon = Array("icona1", "icona2", "icona3", "icona4", "icona5",
"icona6", "icona7", "icona8", "icona9", "icona10", "icona11",
"icona12")
myref = Array("d3", "d4", "D5", "D6", "D7", "D8", "D9", "D10", "D11",
"D12", "D13", "D14")
I = LBound(myref)

For Each icon In myicon
Set myicon.Picture = LoadPicture("filepath" & Sheets("Sheet1").Range
(myref(I)).Value & ".bmp")
I = I + 1
Next icon

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

This works as
Set icona1.Picture = LoadPicture("filepath" & Sheets("Sheet1").Range
("D3").Value & ".bmp")
Set icona2.Picture = LoadPicture("filepath" & Sheets("Sheet1").Range
("D4").Value & ".bmp")
etc..

So why not with the For statement...

Any suggestions?

Cheers
 
O

OssieMac

Untested but the following does not look correct.
Set myicon.Picture = LoadPicture etc

myicon is your entire array. In the for each (icon is the individual element)

Shouldn't it be
Set icon.Picture = LoadPicture etc
 
N

NPell

Untested but the following does not look correct.
Set myicon.Picture = LoadPicture etc

myicon is your entire array. In the for each (icon is the individual element)

Shouldn't it be
Set icon.Picture = LoadPicture etc

--
Regards,

OssieMac









- Show quoted text -

I dont think so, because it is saying that whatever the value of
myicon is at this time...
Then it will be the 2nd value on the 2nd loop... etc.
I will try it though.
Thanks for responding.
 
B

Bob Phillips

But icon points to the element in the myIcon array. So you extract the value
in icon, but you cannot then use that as an object to associate the picture
to. Maybe you need an array of picture objects.

--
__________________________________
HTH

Bob

Untested but the following does not look correct.
Set myicon.Picture = LoadPicture etc

myicon is your entire array. In the for each (icon is the individual
element)

Shouldn't it be
Set icon.Picture = LoadPicture etc

--
Regards,

OssieMac









- Show quoted text -

I dont think so, because it is saying that whatever the value of
myicon is at this time...
Then it will be the 2nd value on the 2nd loop... etc.
I will try it though.
Thanks for responding.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top