Donc j'ai essayé plusieurs code avec l'instruction Me ou Controls, ca marche qd on fait référence à des images de la userform mais une une "worksheets" il ne trouve pas l'objet. j' ai essayé
Dim L as integer
L = 1
me.("feuil5.Image" & L).picture.....
Ou d'autre compilation dans le même genre
Si quelqu'un aurai une solution c'est serai super
Merci d'avance
A voir également:
[déplacé VB.NET -> VBA] indiquer le chemin à plusieurs image sur une feuil à par
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018219 18 févr. 2010 à 21:24
Bonjour,
1) (et surtout) : tu ne développes pas sous VB.Net (le présent thème), mais, comme tu le dis toi-même, sous VBA/Excel. Le choix du thème adéquat n'est ni un divertissement, ni une option ... Il est une réelle nécessité. Veille à y prêter attention dorénavant. Merci.
2) le propre des collections, est qu'elles permettent de se référer à un de leur membre soit en indiquant un index ( ex : macollection(2) pour se référer au membre d'uindex 2 de macollection), soit en indiquant le nom du membre (ex: macollection("toto") pour se référer au membre nommé "toto" de macollection.
Vu ?
Bon... Alors :
Worksheets est une collection (celles des feuilles)
Controls est une collection (celle des contrôles posés sur un UserForm)
Shapes est une collection (celle des formes posées sur une feuille de calcul)
A toi de jouer (tu devrais avoir capté et être à même d'écrire ton code, maintenant).
____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Karlito42120
Messages postés2Date d'inscriptionjeudi 18 février 2010StatutMembreDernière intervention19 février 2010 19 févr. 2010 à 02:11
Bonsoir
Merci pour l'info je ferai attention la prochaine fois.
Mais je ne peut pas attribuer d'index à mes images, je n'ai pas cette propriété !!
Tes 20 images ont le même nom avec un numéro d'index différent allant de 1 à 20 et tu fait appel en faisant Image(2), je connait.
Mais sans cette propriété mes images s'appelle Image1, Image2, Image3,etc...
Voici mon code simplifié
Private Sub CommandButton1_Click()
L = 1
While L <> 21
Feuil5.Image(L).Picture = LoadPicture("C:\Program Files\Suivis SAV 3.0\Image" & L & ".bmp")
L = L + 1
Wend
End Sub
Ce code est sur UserForm1 et les image sur une feuille
Vu comme çà, çà ne fonctionne pas! c'est fait pour éviter d'avoir :
Feuil5.Image1.Picture = LoadPicture("C:\Program...
Feuil5.Image2.Picture = LoadPicture("C:\Program...
Désolé si je prend pas les thermes exact, je ne demande qu'à apprendre
Merci
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018219 19 févr. 2010 à 08:00
Tu ne "demandes qu'à apprendre", mais ne lis pas !
Je t'ai pourtant exposé ce qu'étaient les collections, non ?
Tiens, par exemple, (si tes images sont sur un userform,... autre collection si sur feuille...) :
Me.Controls("Image" & 3) se réfère à l'image Image3 de ton UserForm
Je t'ai également parlé d'autres collections, non (WorkSheets et Shapes) ==>> C'est exactement le même principe ..
Tes contrôles n'ont pas d'index propre ! Ils sont par contre inclus dans une collection au sein de laquelle ils possèdent un index et un nom. C'est le principe de toute collection. Dans l'exemple ci-dessus, on n'utilise même pas leur index dans la collection, mais directement leur nom dans la collection Controls.
____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est