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

référence et macro !?

18 réponses
Avatar
Pif
Bonjour, j'ai 2 questions li=E9es =E0 ma question pr=E9c=E9dente, mais sous=
un
nouveau topic !

Je veux donc pouvoir acc=E9l=E9rer quelques chose de r=E9current : un renvoi
vers une figure.

Du coup:
1) quand j'ouvre la boite de dialogue, est il possible de basculer par
une instruction la liste d=E9roulante "cat=E9rogie" pour la mettre sur
figure, et celle de type de r=E9f=E9rence sur "texte et l=E9gende" ?

J'ai essay=E9 avec le code suivant, mais ca ne fonctionne pas :

With Dialogs(wdDialogInsertCrossReference)
.ReferenceType =3D "Figure"
.ReferenceKind =3D wdOnlyLabelAndNumber
.InsertAsHyperlink =3D True
.Show
End With

2) Quand la r=E9f=E9rence est cr=E9e, je veux faire un bouton pour que si
j'ai la souris dessus cela ajoute au code de champs "\* lower". Il n'y
a la aucune difficult=E9. Mais est il possible d'ajouter que si le
renvoi =E0 une forme "legende complete" ou autre, il le mette
automatiquement en "texte et num=E9ro de l=E9gende" ".ReferenceKind =3D
wdOnlyLabelAndNumber" ou une fois le renvoi ins=E9rer, il est impossible
de modifier sa nature et il faut que j'en ins=E8re un autre ?

(mon id=E9e est tout simplement de cliquer sur 2 boutons simples si le
faire en 1 seul n'est pas possible, vous l'avez compris... ;) )


Merci pour vos infos !

10 réponses

1 2
Avatar
Anacoluthe
Bonjour !

'Pif' nous a écrit ...
1) quand j'ouvre la boite de dialogue, est il possible de basculer par
une instruction la liste déroulante "catérogie" pour la mettre sur
figure, et celle de type de référence sur "texte et légende" ?
J'ai essayé avec le code suivant, mais ca ne fonctionne pas
2) Quand la référence est crée, je veux faire un bouton pour que si
j'ai la souris dessus cela ajoute au code de champs "* lower". Il n'y
a la aucune difficulté. Mais est il possible d'ajouter que si le
renvoi à une forme "legende complete" ou autre, il le mette
automatiquement en "texte et numéro de légende" ".ReferenceKind > wdOnlyLabelAndNumber" ou une fois le renvoi insérer, il est impossible
de modifier sa nature et il faut que j'en insère un autre ?


Il me semble que Jean-Guy a répondu à la première question le 2/3

Je suppose que vous avez absolument besoin de lire la liste des
figures et légendes pour choisir de bon renvoi.

Si ce n'est pas le cas, s'il vous suffit de donner le numéro
de la figure, simplifiez votre macro en utilisant directement
InsertCrossReference.

Si c'est bien le cas, j'éviterais d'utiliser la boîte de dialogue
wdDialogInsertCrossReference, au profit d'une UserForm où
j'ajouterais le type de renvoi ReferenceKind et le choix du * lower

Concernant ce dernier commutateur son ajout se fait simplement
dans le code du champ du Range du renvoi :
With monRangeDeRenvoi.Fields(1).Code
.Text = .Text & " * lower"
End With
A vous de mettre éventuellement une condition selon le ReferenceKind
de votre renvoi...

Anacoluthe
« Peu importe le dialogue ou le monologue, les gens
ne saisissent que ce qui fait leur affaire. »
- Henri LAFRANCE

Avatar
Geo

J'ai essayé avec le code suivant, mais ca ne fonctionne pas :

With Dialogs(wdDialogInsertCrossReference)
.ReferenceType = "Figure"
.ReferenceKind = wdOnlyLabelAndNumber
.InsertAsHyperlink = True
.Show
End With


Même résultat avec la 2007
Apparemment c'est un bogue depuis longtemps :
http://support.microsoft.com/kb/209668/fr.
Il y a une solution de contournement pas triste.

--
A+

Avatar
Anacoluthe
Re !

'Pif' nous a écrit ...
(mon idée est tout simplement de cliquer sur 2 boutons simples si le
faire en 1 seul n'est pas possible, vous l'avez compris... ;) )


Attention à ne pas dépasser le seuil de rentabilité :-D )))
Ex: macro devant faire gagner 2 secondes à chaque renvoi
avec temps de développement de la macro de 4H (c'est assez peu)
= macro rentable à partir de 7200 renvois huf huf huf

Non je rigole. Le VBA ça fait gagner du temps...

Anacoluthe
« Que de temps perdu à gagner du temps ! »
- Paul MORAND

Avatar
Anacoluthe
Hello Geo !

'Geo' nous a écrit ...
Il y a une solution de contournement pas triste.


:-D Ben oui, Jean-Guy l'avait dit ;-)

Et en plus la traduction zigotomatique de la KB donnera sûrement
un code faux aux SendKeys sur nos boîtes francisées !!

Anacoluthe
« Que de temps perdu à gagner du temps ! »
- Paul MORAND

Avatar
Pif
On 4 mar, 17:22, Geo wrote:
Apparemment c'est un bogue depuis longtemps :http://support.microsoft.com/kb/209668/fr.


question subsidiaire, comment on fait pour avoir le texte original en
anglais ? parce que la traduction auto, y'a rien de pire ! :)

Avatar
Geo

On 4 mar, 17:22, Geo wrote:
Apparemment c'est un bogue depuis longtemps
:http://support.microsoft.com/kb/209668/fr.


question subsidiaire, comment on fait pour avoir le texte original en
anglais ? parce que la traduction auto, y'a rien de pire ! :)


Il faut demander la traduction (sic) en anglais vers les haut à droite.
Il me semble qu'il propose allemand par défaut, il suffit de changer.

--
A+


Avatar
Anacoluthe
Bonjour !

'Pif' nous a écrit ...
question subsidiaire, comment on fait pour avoir le texte original en
anglais ? parce que la traduction auto, y'a rien de pire ! :)


A droite de la traduction zigotomatique demander la traduction en Anglais(US)
Vous noterez qu'il suffit aussi de changer FR par EN-US dans le lien...

Anacoluthe
« Les belles traductions, comme les belles épouses,
ne sont pas toujours les plus fidèles. »
- Esaias TEGNER

Avatar
Pif
On 4 mar, 17:32, Anacoluthe wrote:

Attention à ne pas dépasser le seuil de rentabilité :-D )))
Ex: macro devant faire gagner 2 secondes à chaque renvoi
avec temps de développement de la macro de 4H (c'est assez peu)
= macro rentable à partir de 7200 renvois huf huf huf


Je ne l'ai peut etre pas précisé mais je suis informaticien (jeune),
j'ai donc toute ma carrière pour profiter de mes apprentissage, du
temps pour les rentabiliser... :)
c'est vrai que j'ai du boulot, que c'est pas forcément rentable...
mais il y a deux chose :

le problème s'est posé il y a déjà peu de temps ...
1) si on pense toujours à court terme, jamais on se s'investi... je me
dis que ce premier programme m'aura apris à chercher la doc, découvrir
VB, etc...
2) faut penser que de définir des options personnalisées permet aussi
de ne pas avoir a vérifier qu'on a mis les bonnes options et donc
réduire le risque d'erreur....

Si vous cherchez sur google, y'a longtemps, j'ai passé trois jours
pour faire un truc pas tres long mais ch...
J'avais un problème de figure : quand je met un effet, il me rogne les
bord, et mon logiciel me sort du svg... pas bien pratique...

Du coup, un manip qui prend 1 minute pour chaque image : exporter
l'image en svg, enlever le filigranne, la convertir en png (inkscape),
rejouter une bordure (imagemagick) l'insérer dans word... bof...
et en plus, y'avait le problème des résolutions d'image qui devenaient
très lourd pour word...

Du coup, maintenant j'ai un batch qui me fait tout :
- parcours de toutes les images SVG du répertoire
- appel en perl pour enlever le filigranne
- conversion en PNG (inkscape ligne de commande)
- ajout des bordures (image magick ligne de commande)
- j'ai apris via le forum a faire des insertions liées...

maintenant, j'ai plus qu'a double clicker sur un batch pour convertir
toutes les images de mon répertoire, et j'ai une variable à changer
pour la résolution...
je gagne un temps très précieux, je ne sais pas si c'est équivalent,
mais au moins je ne suis pas rebuter par faire évoluer mes schémas, et
je gagne en qualité, rapidité de travail... et en plus j'ai appris le
WHS et le JS et des outils d'imageries avec leur problèmes...

il ne subsiste qu'un blem, je le pose dans un message suivant :)


j'ai passé deux


Non je rigole. Le VBA ça fait gagner du temps...

Anacoluthe
« Que de temps perdu à gagner du temps ! »
- Paul MORAND


Avatar
Circé
Bonjour Pif,

Pif a pensé très fort :
On 4 mar, 17:22, Geo wrote:
Apparemment c'est un bogue depuis longtemps
:http://support.microsoft.com/kb/209668/fr.


question subsidiaire, comment on fait pour avoir le texte original en
anglais ? parce que la traduction auto, y'a rien de pire ! :)


T'as raison !

Regarde à droite de l'écran : Traductions possibles.

Circé


Avatar
Pif
Rebonjour, je viens d'avancer ...
Voici donc mon code tout bete :

With Dialogs(wdDialogInsertCrossReference)
SendKeys "%cf"
SendKeys "{enter}"
SendKeys "%ut"
SendKeys "{enter}"
.Show
End With
End Sub

En effet, normalmeent, pour changer mes paramètres, il faut faire un
AltC puis "F" pour figure
alt U puis T pour texte et numéro de légende uniquement

et rien ne se passe...
j'ai bien essayé de rajouter le "down", d'enlever les "enter", de
déplacer le show au début... rien n'y fait !?

Vous pouvez me donner un coup de main ?

Merci !
1 2