programmation de formes, et objets

  • Initiateur de la discussion Bernard LAUNAY
  • Date de début
B

Bernard LAUNAY

Guest
Je voudrais savoir comment "nommer" dans des macros VB des objets tels que graphiques, formes, etc...
En effet, le nom implicite attribué à la création est constitué du type d'objet (ex: RECTANGLE) et d'un incrément, ce qui est difficile ensuite à identifié dans une procédure.

En fait, cela me servira immédiatement, dans un classeur dont les colonnes repésentent les jours du mois, et les lignes les heures (une cellule par heure complète), à dessiner des rectangles proportionnels à la durée de l'évenement, et positionnés évidement en fonction de l'horaire exact dans cette heure.

en pièce jointe, un exemple dans lequel les événements sont faits "à la mimine", et "au pif"
MERCI
 

Pièces jointes

  • SAMPLE.zip
    13.4 KB · Affichages: 21
  • SAMPLE.zip
    13.4 KB · Affichages: 18
  • SAMPLE.zip
    13.4 KB · Affichages: 19
T

Ti

Guest
voici 2 procédures qui font cela simplement

Sub Renommer()
Dim MonImage As Shape
Set MonImage = ActiveSheet.Shapes("MonImage")
With MonImage
.Name = "AutreImage"
End With
End Sub

Sub AjouterRenommer()
With ActiveSheet.Shapes.AddShape(msoShapeOval, 166.8, 78#, 77.4, 78.6)
.Name = "MonImage"
End With
End Sub
 
B

Bernard LAUNAY

Guest
Merci pour ta réponse rapide
Pour l'exemple joint, je ne renommerai pas les rectangles que tu as pu voir, (ils ont tous été nommés par Excel), mais je les créerai maintenant par macro en attribuant le nom tel que tu me l'as suggéré.
Par contre, c'est là que j'ai besoin de formuler adresse (pour placer exactement à l'heure juste), largeur(exactement une cellule), hauteur(en foction de la durée de l'évènement, sachant que la hauteur de la cellule = une heure)

merci encore


Bonne réception
Bernard
 

Statistiques des forums

Discussions
314 018
Messages
2 104 605
Membres
109 086
dernier inscrit
CD_Mirantin