Largeur d'un shape stockée dans une variable

Le
Infogroup
Bonsoir à tous,

je bute sur la possibilité de stocker la largeur d'un shape ( ou la
hauteur ) dans une variable qui s'appellerait dans cet exemple mémo1 pour le
1er shape, mémo2 pour le 2ième etc
la ligne mémo " & L & " = Selection.ShapeRange.Width n'est pas correcte
alors que la suivante [B40] = Selection.ShapeRange.Height est OK

Sub Essai()
Set Plg4 = [A6:A39]
L = 1
For Each c In Plg4
c.Select
If Not c.Comment Is Nothing Then
With c.Comment.Shape.OLEFormat.Object
.Width = .ShapeRange.Width
.Height = .ShapeRange.Height
.Visible = True
.Select
mémo " & L & " = Selection.ShapeRange.Width
[B40] = Selection.ShapeRange.Height
.Visible = False
End With
End If
L = L + 1
Next c

End Sub

Vos lumières seraient très appréciées.

Merci par avance

Cordialement

Infogroup
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
michdenis
Le #20480291
Bonjour,

Un petit exemple, pour boucler sur tous les commentaires
de la plage désignée et de mettre dans une variable
tableau (array) la valeur désignée : Le nom du commentaire,
la largeur du commentaire et sa hauteur.

'----------------------------------
Sub Commentaire()
Dim Hauteur(), Largeur(), Nom(), X As Integer
Dim Plg4 As Range, C As Comment

With Worksheets("Feuil1")
Set Plg4 = .Range("A6:A39")
For Each C In .Comments
sss = C.Parent.Address
If Not Intersect(Plg4, .Range(C.Parent.Address)) Is Nothing Then
With C.Shape.OLEFormat.Object
X = X + 1
ReDim Preserve Nom(X)
Nom(X) = .Name
ReDim Preserve Hauteur(X)
Hauteur(X) = .Height
ReDim Preserve Largeur(X)
Largeur(X) = .Width
End With
End If
Next
End With
End Sub
'----------------------------------




"Infogroup" #QPv$
Bonsoir à tous,

je bute sur la possibilité de stocker la largeur d'un shape ( ou la
hauteur ) dans une variable qui s'appellerait dans cet exemple mémo1 pour le
1er shape, mémo2 pour le 2ième etc...
la ligne mémo " & L & " = Selection.ShapeRange.Width n'est pas correcte
alors que la suivante [B40] = Selection.ShapeRange.Height est OK

Sub Essai()
Set Plg4 = [A6:A39]
L = 1
For Each c In Plg4
c.Select
If Not c.Comment Is Nothing Then
With c.Comment.Shape.OLEFormat.Object
.Width = .ShapeRange.Width
.Height = .ShapeRange.Height
.Visible = True
.Select
mémo " & L & " = Selection.ShapeRange.Width
[B40] = Selection.ShapeRange.Height
.Visible = False
End With
End If
L = L + 1
Next c

End Sub

Vos lumières seraient très appréciées.

Merci par avance

Cordialement

Infogroup
Infogroup
Le #20480681
Bonsoir michdenis et merci pour cet exemple,

je vais l'adapter à mon application et ça devrait convenir

merci encore

Cdl

Infogroup




"michdenis" news:%
Bonjour,

Un petit exemple, pour boucler sur tous les commentaires
de la plage désignée et de mettre dans une variable
tableau (array) la valeur désignée : Le nom du commentaire,
la largeur du commentaire et sa hauteur.

'----------------------------------
Sub Commentaire()
Dim Hauteur(), Largeur(), Nom(), X As Integer
Dim Plg4 As Range, C As Comment

With Worksheets("Feuil1")
Set Plg4 = .Range("A6:A39")
For Each C In .Comments
sss = C.Parent.Address
If Not Intersect(Plg4, .Range(C.Parent.Address)) Is Nothing Then
With C.Shape.OLEFormat.Object
X = X + 1
ReDim Preserve Nom(X)
Nom(X) = .Name
ReDim Preserve Hauteur(X)
Hauteur(X) = .Height
ReDim Preserve Largeur(X)
Largeur(X) = .Width
End With
End If
Next
End With
End Sub
'----------------------------------




"Infogroup" discussion :
#QPv$
Bonsoir à tous,

je bute sur la possibilité de stocker la largeur d'un shape ( ou la
hauteur ) dans une variable qui s'appellerait dans cet exemple mémo1 pour
le
1er shape, mémo2 pour le 2ième etc...
la ligne mémo " & L & " = Selection.ShapeRange.Width n'est pas correcte
alors que la suivante [B40] = Selection.ShapeRange.Height est OK

Sub Essai()
Set Plg4 = [A6:A39]
L = 1
For Each c In Plg4
c.Select
If Not c.Comment Is Nothing Then
With c.Comment.Shape.OLEFormat.Object
.Width = .ShapeRange.Width
.Height = .ShapeRange.Height
.Visible = True
.Select
mémo " & L & " = Selection.ShapeRange.Width
[B40] = Selection.ShapeRange.Height
.Visible = False
End With
End If
L = L + 1
Next c

End Sub

Vos lumières seraient très appréciées.

Merci par avance

Cordialement

Infogroup



Publicité
Poster une réponse
Anonyme