Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Coordonnées pour tracer une ligne graphique (.AddLine)

6 réponses
Avatar
Jean bidule
Bonjour le forum, re-bonjour Papou si tu me re-lis,

J'aimerais tracer une grande croix (à l'aide de la fonction .AddLine) au
travers une range nommé "frigo 1" (E5:I12)

J'ai plusieurs range nommé comme cela. ("frigo 2", "frigo 3", etc)

Comment calculer les chiffres que je dois employer pour mettre dans fonction
.AddLine ?
Par exemple la génération automatique d'une macro m'a donné les lignes
suivantes :

ActiveSheet.Shapes.AddLine(297#, 30611.25, 498#, 30752.25).Select
ActiveSheet.Shapes.AddLine(297#, 30611.25, 498#, 30752.25).Select
Selection.ShapeRange.Flip msoFlipHorizontal

Que veulent dire et comment calculer soi-même les chiffres 297# , 30611.25,
498# etc...

Pourrais-dire à une fonction de me tracer une ligne depuis la cellule E5 (du
haut à gauche de cette cellule) jusque la cellule I12 (en bas à droite ce
cette cellule) ?

Merci beaucoup à vous le forum
Jean

6 réponses

Avatar
JpPradier
Bonjour Jean bidule

Sauf erreur Range("a1").top et range("a1").left te donne la distance du coin eh haut à gauche de la
cellule A1 par rapport au haut et à la gauche de la feuille.

j-p
Avatar
GVentre
Bonjour Jean Bidule,

Les chiffres entre parenthèses correspondent à la position en points par
rapport à la gauche et par rapport au sommet du document, pour le début et
la fin de la ligne. C'est pas très clair :-) mais l'exemple parle de lui même:

Une solution consiste à récupérer la position de ta cellule de début et de
ta cellule de fin, puis d'appliquer ces valeurs à ton "addline":

Sub CreLigne()

GaucheDebut = Range("E5").Left
HautDebut = Range("E5").Top
GaucheFin = Range("I12").Left
HautFin = Range("I12").Top

With ActiveSheet.Shapes.AddLine(GaucheDebut, HautDebut, _
GaucheFin, HautFin).Line
End With

End Sub

C'est bon?

Cordialement, Guillaume VENTRE



Bonjour le forum, re-bonjour Papou si tu me re-lis,

J'aimerais tracer une grande croix (à l'aide de la fonction .AddLine) au
travers une range nommé "frigo 1" (E5:I12)

J'ai plusieurs range nommé comme cela. ("frigo 2", "frigo 3", etc)

Comment calculer les chiffres que je dois employer pour mettre dans fonction
..AddLine ?
Par exemple la génération automatique d'une macro m'a donné les lignes
suivantes :

ActiveSheet.Shapes.AddLine(297#, 30611.25, 498#, 30752.25).Select
ActiveSheet.Shapes.AddLine(297#, 30611.25, 498#, 30752.25).Select
Selection.ShapeRange.Flip msoFlipHorizontal

Que veulent dire et comment calculer soi-même les chiffres 297# , 30611.25,
498# etc...

Pourrais-dire à une fonction de me tracer une ligne depuis la cellule E5 (du
haut à gauche de cette cellule) jusque la cellule I12 (en bas à droite ce
cette cellule) ?

Merci beaucoup à vous le forum
Jean





Avatar
Jean bidule
Ok j-p

j'ai bien compris et m'appliquerai à adapter cela à mes besoins

Merci beaucoup à toi
Jean

"JpPradier" a écrit dans le message
de news: %
Bonjour Jean bidule

Sauf erreur Range("a1").top et range("a1").left te donne la distance du
coin eh haut à gauche de la
cellule A1 par rapport au haut et à la gauche de la feuille.

j-p



Avatar
Jean bidule
Merci Guillaume,

c'est super chouette, je vais pouvoir continuer mon travail.

Encpre merci beaucoup à toi
Jean

"GVentre" a écrit dans le message de news:

Bonjour Jean Bidule,

Les chiffres entre parenthèses correspondent à la position en points par
rapport à la gauche et par rapport au sommet du document, pour le début
et
la fin de la ligne. C'est pas très clair :-) mais l'exemple parle de lui
même:

Une solution consiste à récupérer la position de ta cellule de début et de
ta cellule de fin, puis d'appliquer ces valeurs à ton "addline":

Sub CreLigne()

GaucheDebut = Range("E5").Left
HautDebut = Range("E5").Top
GaucheFin = Range("I12").Left
HautFin = Range("I12").Top

With ActiveSheet.Shapes.AddLine(GaucheDebut, HautDebut, _
GaucheFin, HautFin).Line
End With

End Sub

C'est bon?

Cordialement, Guillaume VENTRE



Bonjour le forum, re-bonjour Papou si tu me re-lis,

J'aimerais tracer une grande croix (à l'aide de la fonction .AddLine) au
travers une range nommé "frigo 1" (E5:I12)

J'ai plusieurs range nommé comme cela. ("frigo 2", "frigo 3", etc)

Comment calculer les chiffres que je dois employer pour mettre dans
fonction
..AddLine ?
Par exemple la génération automatique d'une macro m'a donné les lignes
suivantes :

ActiveSheet.Shapes.AddLine(297#, 30611.25, 498#, 30752.25).Select
ActiveSheet.Shapes.AddLine(297#, 30611.25, 498#, 30752.25).Select
Selection.ShapeRange.Flip msoFlipHorizontal

Que veulent dire et comment calculer soi-même les chiffres 297# ,
30611.25,
498# etc...

Pourrais-dire à une fonction de me tracer une ligne depuis la cellule E5
(du
haut à gauche de cette cellule) jusque la cellule I12 (en bas à droite ce
cette cellule) ?

Merci beaucoup à vous le forum
Jean







Avatar
Modeste
Bonsour ® Guillaume ,
légére correction :
pour une croix en E5:I12
Sub CreLigne()
GaucheDebut = Range("E5").Left
HautDebut = Range("E5").Top
GaucheFin = Range("I12").Offset(1, 1).Left
Hautfin = Range("I12").Offset(1, 1).Top
ActiveSheet.Shapes.AddLine(GaucheDebut, HautDebut,
GaucheFin, Hautfin).Select
ActiveSheet.Shapes.AddLine(GaucheDebut, Hautfin,
GaucheFin, HautDebut).Select
End Sub

@+
-----Message d'origine-----
J'aimerais tracer une grande croix (Ã l'aide de la
fonction .AddLine) au


travers une range nommé "frigo 1" (E5:I12)




Avatar
GVentre
Bonsoir Modeste,

You're right!!!
Autre possibilité: J13 à la place de I12!! ;-)

Cdlt,

Guillaume VENTRE




Bonsour ® Guillaume ,
légére correction :
pour une croix en E5:I12
Sub CreLigne()
GaucheDebut = Range("E5").Left
HautDebut = Range("E5").Top
GaucheFin = Range("I12").Offset(1, 1).Left
Hautfin = Range("I12").Offset(1, 1).Top
ActiveSheet.Shapes.AddLine(GaucheDebut, HautDebut,
GaucheFin, Hautfin).Select
ActiveSheet.Shapes.AddLine(GaucheDebut, Hautfin,
GaucheFin, HautDebut).Select
End Sub

@+
-----Message d'origine-----
J'aimerais tracer une grande croix (Ã l'aide de la
fonction .AddLine) au


travers une range nommé "frigo 1" (E5:I12)