Récupérer valeurs du format de la forme

Bonjour,

quand je fais "Insertion", "Formes", "Trait", j'aimerais récupérer les attributs de longueur et largeur de ce trait dans des cellules de ma feuille en cours.

Est-ce possible ?

Bonjour

J'ai mis 2 traits pour tester dans mon exemple

Sub TestBleu()
With Feuil1.Shapes("Connecteur droit 2")
MsgBox "Left     : " & .Left & vbCrLf _
& "Top     : " & .Top & vbCrLf _
& "Width  : " & .Width & vbCrLf _
& "Height : " & .Height & vbCrLf, vbOKOnly, ""
End With
End Sub

Cordialement

26trait.xlsm (18.32 Ko)

Super, merci, mais j'aurais souhaité que ces valeurs soient écrites dans des cellules de ma feuille plutôt que dans une MsgBox car je dois ranger ensuite ces valeurs dans un tableau.

Exemple : la donnée Width en cellule A1, et la Height en cellule A2.

Re :

C'est bon, j'ai remplacé le MsgBox :

MsgBox "Left : " & .Left & vbCrLf _

& "Top : " & .Top & vbCrLf _

& "Width : " & .Width & vbCrLf _

& "Height : " & .Height & vbCrLf, vbOKOnly, ""

par :

Workbooks("MonFichier.xlsm").Sheets("feuil1").Range("A1").Value = .Width & vbCrLf

Workbooks("MonFichier.xlsm").Sheets("feuil1").Range("A2").Value = .Height & vbCrLf

C'est exactement ce que je voulais, merci beaucoup Amadéus.

bonjour

tu peux même enlever le "& vbcrlf" qui ajoute un retour à la ligne inutile

Workbooks("MonFichier.xlsm").Sheets("feuil1").Range("A1").Value = .Width
Workbooks("MonFichier.xlsm").Sheets("feuil1").Range("A2").Value = .Height

Ah OK, c'est pour ça que quand je transférais mes valeurs dans mon tableau, ça me retournais un #VALEUR.

Effectivement c'est beaucoup mieux.

Encore une petite question, la valeur récupérée est en pixel je pense, mais j'aimerai l'avoir en mm.

Bonjour

tu multiplies par 0.264583 mm/pixel

Bonjour

Bonjour h2so4

Sauf erreur, ta réponse ne pourrait-êtret valable que pour un trait horizontal. car la valeur Width donne la largeur occupée par le trait sur les cellules.

C'est pour cela que j'ai mis 2 traits dans mon fichier exemple.

Pour le trait bleu horizontal qui occupe 4 cellules, la valeur Width est 270,6

Pour le trait rouge incliné et géométriquement et visiblement, plus long, la valeur Width est 270,8 soit sensiblement identique.

Cordialement

Nickel, merci à vous, j'ai tout ce qu'il me faut.

Rechercher des sujets similaires à "recuperer valeurs format forme"