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

macro pour dimensioner graphique

5 réponses
Avatar
sasha
Bonjour à tous,

Je cherche un moyen de dimensionner des graphiques de façon précise , j'ai
trouvé par hasard la macro qui suit, mais comme je suis toujours aussi nul en
vba je n'arrive pas à saisir les lignes magiques qui vont faire que ma macro
de dimension va demander mon choix à la selection du graphique- Alors encore
une fois j'ai besoin de vous
merci - voici la macro
Sub
DimGraph()
Dim Lg, Ht, Msg1, Msg2, Tte, LgStd, HtStd
Msg1 = "Quelle largeur
en mm souhaitez-vous ?"
Msg2 = "Quelle hauteur en mm souhaitez-vous ?"
Tte =
"Dimensions du graphique"
'largeur et hauteur standard d'un objet graphique
incorporé
'en mm
LgStd = "107"
HtStd = "52,5"
Lg = InputBox(Msg1, Tte, LgStd)
Ht = InputBox(Msg2, Tte, HtStd)
On Error GoTo GesErr
With
Selection
.Height = Ht * 2.925
.Width = Lg * 2.66
End
With
Exit Sub
GesErr:
MsgBox "Vous devez d'abord sélectionner un graphique..."
End Sub

--
sasha

5 réponses

Avatar
h2so4
bonjour,

voici une correction qui semble fonctionner

Sub DimGraph()
Dim Lg, Ht, Msg1, Msg2, Tte, LgStd, HtStd
Msg1 = "Quelle largeur en mm souhaitez-vous ?"
Msg2 = "Quelle hauteur en mm souhaitez-vous ?"
Tte = "Dimensions du graphique"
'largeur et hauteur standard d'un objet graphique
' incorporé
'en mm
LgStd = "107"
HtStd = "52,5"
Lg = InputBox(Msg1, Tte, LgStd)
Ht = InputBox(Msg2, Tte, HtStd)

acn = ActiveChart.Name
asn = ActiveSheet.Name
acn = Right(acn, Len(asn) + 1)

On Error GoTo GesErr

With ActiveSheet.Shapes(acn)

.Height = Ht * 2.925
.Width = Lg * 2.66
End With
Exit Sub
GesErr:
MsgBox "Vous devez d'abord sélectionner un graphique..."
End Sub

"sasha" wrote in message
news:
Bonjour à tous,

Je cherche un moyen de dimensionner des graphiques de façon précise , j'ai
trouvé par hasard la macro qui suit, mais comme je suis toujours aussi nul
en
vba je n'arrive pas à saisir les lignes magiques qui vont faire que ma
macro
de dimension va demander mon choix à la selection du graphique- Alors
encore
une fois j'ai besoin de vous
merci - voici la macro
Sub
DimGraph()
Dim Lg, Ht, Msg1, Msg2, Tte, LgStd, HtStd
Msg1 = "Quelle largeur
en mm souhaitez-vous ?"
Msg2 = "Quelle hauteur en mm souhaitez-vous ?"
Tte > "Dimensions du graphique"
'largeur et hauteur standard d'un objet graphique
incorporé
'en mm
LgStd = "107"
HtStd = "52,5"
Lg = InputBox(Msg1, Tte, LgStd)
Ht = InputBox(Msg2, Tte, HtStd)
On Error GoTo GesErr
With
Selection
.Height = Ht * 2.925
.Width = Lg * 2.66
End
With
Exit Sub
GesErr:
MsgBox "Vous devez d'abord sélectionner un graphique..."
End Sub

--
sasha


Avatar
sasha
merci pour cette rapide reponse, mais comme je l'ai dit je suis nul en vba
donc il me manque le talisman qui va executer la macro automatiquement à la
selection du graphique- par ailleurs en executant la macro manuellement ,
j'ai message erreur de syntaxe... suis coincé dans mon impasse- merci pour un
autre coup de main
--
sasha



bonjour,

voici une correction qui semble fonctionner

Sub DimGraph()
Dim Lg, Ht, Msg1, Msg2, Tte, LgStd, HtStd
Msg1 = "Quelle largeur en mm souhaitez-vous ?"
Msg2 = "Quelle hauteur en mm souhaitez-vous ?"
Tte = "Dimensions du graphique"
'largeur et hauteur standard d'un objet graphique
' incorporé
'en mm
LgStd = "107"
HtStd = "52,5"
Lg = InputBox(Msg1, Tte, LgStd)
Ht = InputBox(Msg2, Tte, HtStd)

acn = ActiveChart.Name
asn = ActiveSheet.Name
acn = Right(acn, Len(asn) + 1)

On Error GoTo GesErr

With ActiveSheet.Shapes(acn)

..Height = Ht * 2.925
..Width = Lg * 2.66
End With
Exit Sub
GesErr:
MsgBox "Vous devez d'abord sélectionner un graphique..."
End Sub

"sasha" wrote in message
news:
Bonjour à tous,

Je cherche un moyen de dimensionner des graphiques de façon précise , j'ai
trouvé par hasard la macro qui suit, mais comme je suis toujours aussi nul
en
vba je n'arrive pas à saisir les lignes magiques qui vont faire que ma
macro
de dimension va demander mon choix à la selection du graphique- Alors
encore
une fois j'ai besoin de vous
merci - voici la macro
Sub
DimGraph()
Dim Lg, Ht, Msg1, Msg2, Tte, LgStd, HtStd
Msg1 = "Quelle largeur
en mm souhaitez-vous ?"
Msg2 = "Quelle hauteur en mm souhaitez-vous ?"
Tte > > "Dimensions du graphique"
'largeur et hauteur standard d'un objet graphique
incorporé
'en mm
LgStd = "107"
HtStd = "52,5"
Lg = InputBox(Msg1, Tte, LgStd)
Ht = InputBox(Msg2, Tte, HtStd)
On Error GoTo GesErr
With
Selection
.Height = Ht * 2.925
.Width = Lg * 2.66
End
With
Exit Sub
GesErr:
MsgBox "Vous devez d'abord sélectionner un graphique..."
End Sub

--
sasha







Avatar
h2so4
bonjour,

1) pour lancer la procédure, sélectionner le graphique et faire alt-F8, et
selectionner la macro dimgraph. Tu peux aussi associer un raccourci à cette
macro.
1bis) pour lancer la procédure automatiquement à la selection du graphique,
il faut activer la détection d'evenement sur les graphiques et d'après ce
que j'ai lu dans la documentation, la séquence d'instructions à executer me
semble plus longue que ce qui est proposé en 1).
2) erreur de syntaxe ?. j'ai fait un copier/coller de la macro dans VBA et
je n'ai pas d'erreur. Une explication possible serait que la configuration
de VBA sur ton PC exige que toutes les variables soient définies. auquel cas
il faudrait compléter l'instruction DIM de la manière suivante.

Dim Lg, Ht, Msg1, Msg2, Tte, LgStd, HtStd, asn, acn


"sasha" wrote in message
news:
merci pour cette rapide reponse, mais comme je l'ai dit je suis nul en vba
donc il me manque le talisman qui va executer la macro automatiquement à
la
selection du graphique- par ailleurs en executant la macro manuellement ,
j'ai message erreur de syntaxe... suis coincé dans mon impasse- merci pour
un
autre coup de main
--
sasha



bonjour,

voici une correction qui semble fonctionner

Sub DimGraph()
Dim Lg, Ht, Msg1, Msg2, Tte, LgStd, HtStd
Msg1 = "Quelle largeur en mm souhaitez-vous ?"
Msg2 = "Quelle hauteur en mm souhaitez-vous ?"
Tte = "Dimensions du graphique"
'largeur et hauteur standard d'un objet graphique
' incorporé
'en mm
LgStd = "107"
HtStd = "52,5"
Lg = InputBox(Msg1, Tte, LgStd)
Ht = InputBox(Msg2, Tte, HtStd)

acn = ActiveChart.Name
asn = ActiveSheet.Name
acn = Right(acn, Len(asn) + 1)

On Error GoTo GesErr

With ActiveSheet.Shapes(acn)

..Height = Ht * 2.925
..Width = Lg * 2.66
End With
Exit Sub
GesErr:
MsgBox "Vous devez d'abord sélectionner un graphique..."
End Sub

"sasha" wrote in message
news:
Bonjour à tous,

Je cherche un moyen de dimensionner des graphiques de façon précise ,
j'ai
trouvé par hasard la macro qui suit, mais comme je suis toujours aussi
nul
en
vba je n'arrive pas à saisir les lignes magiques qui vont faire que ma
macro
de dimension va demander mon choix à la selection du graphique- Alors
encore
une fois j'ai besoin de vous
merci - voici la macro
Sub
DimGraph()
Dim Lg, Ht, Msg1, Msg2, Tte, LgStd, HtStd
Msg1 = "Quelle largeur
en mm souhaitez-vous ?"
Msg2 = "Quelle hauteur en mm souhaitez-vous ?"
Tte >> > "Dimensions du graphique"
'largeur et hauteur standard d'un objet graphique
incorporé
'en mm
LgStd = "107"
HtStd = "52,5"
Lg = InputBox(Msg1, Tte, LgStd)
Ht = InputBox(Msg2, Tte, HtStd)
On Error GoTo GesErr
With
Selection
.Height = Ht * 2.925
.Width = Lg * 2.66
End
With
Exit Sub
GesErr:
MsgBox "Vous devez d'abord sélectionner un graphique..."
End Sub

--
sasha









Avatar
sasha
desolee mais la formule magique ne marche toujours pas la syntaxe erreur se
place sur cette phrase surlignée en gris
..Height = Ht * 2.925
merci si tu peux m'aider

--
sasha



bonjour,

1) pour lancer la procédure, sélectionner le graphique et faire alt-F8, et
selectionner la macro dimgraph. Tu peux aussi associer un raccourci à cette
macro.
1bis) pour lancer la procédure automatiquement à la selection du graphique,
il faut activer la détection d'evenement sur les graphiques et d'après ce
que j'ai lu dans la documentation, la séquence d'instructions à executer me
semble plus longue que ce qui est proposé en 1).
2) erreur de syntaxe ?. j'ai fait un copier/coller de la macro dans VBA et
je n'ai pas d'erreur. Une explication possible serait que la configuration
de VBA sur ton PC exige que toutes les variables soient définies. auquel cas
il faudrait compléter l'instruction DIM de la manière suivante.

Dim Lg, Ht, Msg1, Msg2, Tte, LgStd, HtStd, asn, acn


"sasha" wrote in message
news:
merci pour cette rapide reponse, mais comme je l'ai dit je suis nul en vba
donc il me manque le talisman qui va executer la macro automatiquement à
la
selection du graphique- par ailleurs en executant la macro manuellement ,
j'ai message erreur de syntaxe... suis coincé dans mon impasse- merci pour
un
autre coup de main
--
sasha



bonjour,

voici une correction qui semble fonctionner

Sub DimGraph()
Dim Lg, Ht, Msg1, Msg2, Tte, LgStd, HtStd
Msg1 = "Quelle largeur en mm souhaitez-vous ?"
Msg2 = "Quelle hauteur en mm souhaitez-vous ?"
Tte = "Dimensions du graphique"
'largeur et hauteur standard d'un objet graphique
' incorporé
'en mm
LgStd = "107"
HtStd = "52,5"
Lg = InputBox(Msg1, Tte, LgStd)
Ht = InputBox(Msg2, Tte, HtStd)

acn = ActiveChart.Name
asn = ActiveSheet.Name
acn = Right(acn, Len(asn) + 1)

On Error GoTo GesErr

With ActiveSheet.Shapes(acn)

..Height = Ht * 2.925
..Width = Lg * 2.66
End With
Exit Sub
GesErr:
MsgBox "Vous devez d'abord sélectionner un graphique..."
End Sub

"sasha" wrote in message
news:
Bonjour à tous,

Je cherche un moyen de dimensionner des graphiques de façon précise ,
j'ai
trouvé par hasard la macro qui suit, mais comme je suis toujours aussi
nul
en
vba je n'arrive pas à saisir les lignes magiques qui vont faire que ma
macro
de dimension va demander mon choix à la selection du graphique- Alors
encore
une fois j'ai besoin de vous
merci - voici la macro
Sub
DimGraph()
Dim Lg, Ht, Msg1, Msg2, Tte, LgStd, HtStd
Msg1 = "Quelle largeur
en mm souhaitez-vous ?"
Msg2 = "Quelle hauteur en mm souhaitez-vous ?"
Tte > >> > "Dimensions du graphique"
'largeur et hauteur standard d'un objet graphique
incorporé
'en mm
LgStd = "107"
HtStd = "52,5"
Lg = InputBox(Msg1, Tte, LgStd)
Ht = InputBox(Msg2, Tte, HtStd)
On Error GoTo GesErr
With
Selection
.Height = Ht * 2.925
.Width = Lg * 2.66
End
With
Exit Sub
GesErr:
MsgBox "Vous devez d'abord sélectionner un graphique..."
End Sub

--
sasha














Avatar
h2so4
..height=HT*2.925 doit être
.height=HT*2.925

même chose à la ligne suivante

tu peux mettre la ligne

on error goto geserr

avant la ligne

acn = ActiveChart.Name
"sasha" wrote in message
news:
desolee mais la formule magique ne marche toujours pas la syntaxe erreur
se
place sur cette phrase surlignée en gris
..Height = Ht * 2.925
merci si tu peux m'aider

--
sasha



bonjour,

1) pour lancer la procédure, sélectionner le graphique et faire alt-F8,
et
selectionner la macro dimgraph. Tu peux aussi associer un raccourci à
cette
macro.
1bis) pour lancer la procédure automatiquement à la selection du
graphique,
il faut activer la détection d'evenement sur les graphiques et d'après ce
que j'ai lu dans la documentation, la séquence d'instructions à executer
me
semble plus longue que ce qui est proposé en 1).
2) erreur de syntaxe ?. j'ai fait un copier/coller de la macro dans VBA
et
je n'ai pas d'erreur. Une explication possible serait que la
configuration
de VBA sur ton PC exige que toutes les variables soient définies. auquel
cas
il faudrait compléter l'instruction DIM de la manière suivante.

Dim Lg, Ht, Msg1, Msg2, Tte, LgStd, HtStd, asn, acn


"sasha" wrote in message
news:
merci pour cette rapide reponse, mais comme je l'ai dit je suis nul en
vba
donc il me manque le talisman qui va executer la macro automatiquement
à
la
selection du graphique- par ailleurs en executant la macro manuellement
,
j'ai message erreur de syntaxe... suis coincé dans mon impasse- merci
pour
un
autre coup de main
--
sasha



bonjour,

voici une correction qui semble fonctionner

Sub DimGraph()
Dim Lg, Ht, Msg1, Msg2, Tte, LgStd, HtStd
Msg1 = "Quelle largeur en mm souhaitez-vous ?"
Msg2 = "Quelle hauteur en mm souhaitez-vous ?"
Tte = "Dimensions du graphique"
'largeur et hauteur standard d'un objet graphique
' incorporé
'en mm
LgStd = "107"
HtStd = "52,5"
Lg = InputBox(Msg1, Tte, LgStd)
Ht = InputBox(Msg2, Tte, HtStd)

acn = ActiveChart.Name
asn = ActiveSheet.Name
acn = Right(acn, Len(asn) + 1)

On Error GoTo GesErr

With ActiveSheet.Shapes(acn)

..Height = Ht * 2.925
..Width = Lg * 2.66
End With
Exit Sub
GesErr:
MsgBox "Vous devez d'abord sélectionner un graphique..."
End Sub

"sasha" wrote in message
news:
Bonjour à tous,

Je cherche un moyen de dimensionner des graphiques de façon précise
,
j'ai
trouvé par hasard la macro qui suit, mais comme je suis toujours
aussi
nul
en
vba je n'arrive pas à saisir les lignes magiques qui vont faire que
ma
macro
de dimension va demander mon choix à la selection du graphique-
Alors
encore
une fois j'ai besoin de vous
merci - voici la macro
Sub
DimGraph()
Dim Lg, Ht, Msg1, Msg2, Tte, LgStd, HtStd
Msg1 = "Quelle largeur
en mm souhaitez-vous ?"
Msg2 = "Quelle hauteur en mm souhaitez-vous ?"
Tte >> >> > "Dimensions du graphique"
'largeur et hauteur standard d'un objet graphique
incorporé
'en mm
LgStd = "107"
HtStd = "52,5"
Lg = InputBox(Msg1, Tte, LgStd)
Ht = InputBox(Msg2, Tte, HtStd)
On Error GoTo GesErr
With
Selection
.Height = Ht * 2.925
.Width = Lg * 2.66
End
With
Exit Sub
GesErr:
MsgBox "Vous devez d'abord sélectionner un graphique..."
End Sub

--
sasha