VisualBasic comment changé le nomd'une imag e

Résolu/Fermé
bennyboop - 15 avril 2009 à 14:05
hich24 Messages postés 1619 Date d'inscription mardi 2 octobre 2007 Statut Membre Dernière intervention 11 avril 2023 - 15 avril 2009 à 16:30
Bonjour,
j'ai un souci pour changer le nom d'une image: je suis en trin de créer une biblioteque dans un fichier excel avec des image mais pour pouvoir les applés j'ai bezoin de changer leur nom. mon problème c'est que je n'arrive pas à les activer.
par exemple pour un graph on utile activechart... mais pour les images c'est pas activepicture.
quelqu'un a une idée???
merci d'avance
A voir également:

6 réponses

pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 643
15 avril 2009 à 14:46
Bonjour,

Les images sont des formes (Shapes) donc pour renommer une image en VBA par exemple on peut utiliser le code suivant :
ActiveSheet.Shapes("TOTO").Select
Selection.ShapeRange.Name = "MON_IMAGE_1"

On selectionne ici la forme qui s'appelle TOTO.
Attention car des shapes il peut y en avoir d'autres qui ne sont pas des images mais des dessins ou des boutons, donc pour être certain de travailler sur des images on peut par exemple dans une boucle tester le type :
if Selection.ShapeRange.Type = msoPicture then
...
endif


A+

1
hich24 Messages postés 1619 Date d'inscription mardi 2 octobre 2007 Statut Membre Dernière intervention 11 avril 2023 752
15 avril 2009 à 14:45
0
Je suppose que TOTO est le nom de départ de ton image?
seullement moi je narrive pa avoir son nom

ActiveSheet.Shapes("TOTO").Select
Selection.ShapeRange.Name = "MON_IMAGE_1"


Ce que je fais j'ouvre une fenêtre pour aller cherché une image dans un dossier et je l'insère

Private Sub inserer_image_click()


Sheets("DATA2").Select
Range("J2").Select

nom_fichier1 = ActiveWorkbook.Name

FileToOpen = Application _
.GetOpenFilename("image (*.jpg), *.jpg")
'If FileToOpen <> False Then Workbooks.Open FileToOpen
nom_fichier2 = FileToOpen
ActiveSheet.Pictures.Insert(nom_fichier2).Select

end sub
0
pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 643
15 avril 2009 à 16:13
Si tu veux savoir comment s'appelle l'image que tu viens d'insérer, il suffit de mettre aprés ActiveSheet.Pictures.Insert(nom_fichier2).Select dans ton code :

MsgBox (Selection.ShapeRange.Name)

Elle doit s'appeller "Picture N"
Mais tu n'as peut-être pas besoin de savoir son nom car si tu mets directement :

Selection.ShapeRange.Name = "Le Nom que tu veux"

cela fonctionne.

A+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sayé sa marche !!!!!!!!!!!!
après 3 heurs de galère mercis de votre aide
le truk qui n'allait pas c'était la selection. javè une ligne en tro dan mon programe
merci et bonne journé
0
hich24 Messages postés 1619 Date d'inscription mardi 2 octobre 2007 Statut Membre Dernière intervention 11 avril 2023 752
15 avril 2009 à 16:30
merci de voter sur le (s) message qui vous en aider et de mettre enresolu
0