balvb
Messages postés2Date d'inscriptionmardi 13 avril 2004StatutMembreDernière intervention 6 décembre 2004
-
3 déc. 2004 à 14:55
valtrase
Messages postés937Date d'inscriptionlundi 19 janvier 2004StatutMembreDernière intervention 9 mai 2022
-
6 déc. 2004 à 22:24
Bonjour à tous,
Je n'arrive pas à modifier la propriété name d'un objet shape situé sur une feuille excel.
VBA retourne le code d'erreur 70 : permission refusée.
Voici le contexte :
Dans une feuille excel, il y a plusieurs objets shape dont un de nom "shape1" et un autre de nom "shape2" mais aucun de nom "shapeXX".
Je veux renomer le "shape1" en "shapeXX".
Lors de l'attribution du nom "shapeXX" à l'objet "shape1", VB détecte que l'objet "shape2" porte le nom "shapeXX" et sort donc en erreur.
Pourquoi VBA récupère t-il la valeur "shapeXX" lors de l'interrogation de l'objet "shape2"?
Quelqu'un aurait-il déjà observé cet étrange phénomène?
Il existe bien une solution de contournement :
sélectioner le shape
modifier la propriété name de l'objet selection
cependant les temps de traitement sont beaucoup trop longs pour mes besoins applicatifs
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 3 déc. 2004 à 16:14
Salut balvb
Je connais pas trop VBA, mais en général, les noms des controles ne sont pas modifiables.
En VB6, quand tu veux créer un objet identique avec un nom différent, il suffit de faire :
Dim ShapeXX As New Shape1
Set ShapeXX = Shape1
Vala
Jack
NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
valtrase
Messages postés937Date d'inscriptionlundi 19 janvier 2004StatutMembreDernière intervention 9 mai 20223 3 déc. 2004 à 23:22
Salut,
Question pourquoi vouloir changer la propriété name de ton Shape ? dans ton prog c'est un bon moyen d'avoir des plantages
ne confonds tu pas avec la propriété Caption ou Text ?
_______________________________________
balvb
Messages postés2Date d'inscriptionmardi 13 avril 2004StatutMembreDernière intervention 6 décembre 2004 6 déc. 2004 à 14:20
salut,
merci d'essayer de résoudre mon épineux pb...
en fait :
j'ai une image (le shape) représentant un élément d'un jeu.
je souhaite sauvegarder les caractéristiques de cet élément dans le nom de l'image afin de minimiser les aller/retour entre clients et serveur (le serveur met à jour les noms et le client est capable d'effectuer toutes ses opérations de façon autonome).
le client a la possibilité de mettre à jour les caractéristiques et donc de modifier le nom de l'image.
je n'ai pas trouvé d'autres caractéristiques que le "name" pour contenir mes infos (pas de caption, pas de text pour un objet shape)
valtrase
Messages postés937Date d'inscriptionlundi 19 janvier 2004StatutMembreDernière intervention 9 mai 20223 6 déc. 2004 à 21:56
Tu as une propriété qui est trés utile pour cela c'est le .Tag qui peu recevoir toute sorte d'information
____________________________________________________
Cordialement, Jean-Paul
Le Savoir n'a de valeur que s'il est partagé
Vous n’avez pas trouvé la réponse que vous recherchez ?
valtrase
Messages postés937Date d'inscriptionlundi 19 janvier 2004StatutMembreDernière intervention 9 mai 20223 6 déc. 2004 à 22:24
Oups dsl
Je ne pensais plus que tu était sous VBA donc pas de .Tag
essayes le .AlternativeText mais sans conviction......
____________________________________________________