OVH Cloud OVH Cloud

champs automatique

22 réponses
Avatar
angela
bonjour =E0 tous
voila, j'ai cr=E9e un formulaire avec des champs.
Je voudrai que le contenu de l'un de ces champs (que je=20
nommerai toto" varie selon le contenu d'un autre champs=20
(que je nommerai titi).
Comment dois je proc=E9der???
Merci d'avance=20
Angela

10 réponses

1 2 3
Avatar
Circé
Bonjour angela,

J'ai répondu à cette demande pas plus tard qu'hier. Fais une recherche.
C'était une question de guiralex à 22:32, objet : formulaire...

Circé


bonjour à tous
voila, j'ai crée un formulaire avec des champs.
Je voudrai que le contenu de l'un de ces champs (que je
nommerai toto" varie selon le contenu d'un autre champs
(que je nommerai titi).
Comment dois je procéder???
Merci d'avance
Angela


Avatar
Angela
Re bonjour,
je ne crois pas que se soit le meme probleme...
Si j'ai bien compri,guiralex voulait "copier" un champ
dans d' autres. En ce qui me concerne, je voudrai que
suivant une valeur de champ le contenu d'une autre varie.
Par exemple : si champ1 = toto alors champ2= tata.
Merci
@+
Angela
-----Message d'origine-----
Bonjour angela,

J'ai répondu à cette demande pas plus tard qu'hier. Fais
une recherche.

C'était une question de guiralex à 22:32, objet :
formulaire...


Circé


bonjour à tous
voila, j'ai crée un formulaire avec des champs.
Je voudrai que le contenu de l'un de ces champs (que je
nommerai toto" varie selon le contenu d'un autre champs
(que je nommerai titi).
Comment dois je procéder???
Merci d'avance
Angela
.





Avatar
Circé
Bonjour Angela,

Alors dans ce cas, il te faut soit utiliser les champs IF, soit faire une
petite macro du type :

Sub change_champs()
Dim a, b
Set a = ActiveDocument.FormFields("champ1")
Set b = ActiveDocument.FormFields("champ2")

If a.Result = "TOTO" Then
b.Result = "TATA"
ElseIf a.Result = "BOBO" Then
b.Result = "BABA"
c.Result = "2141"
'etc...
End If
End Sub

Dans la propriété du champ a, tu mets "exécuter la macro "change_champs" à
la sortie.

Circé

Angela wrote:
| Re bonjour,
| je ne crois pas que se soit le meme probleme...
| Si j'ai bien compri,guiralex voulait "copier" un champ
| dans d' autres. En ce qui me concerne, je voudrai que
| suivant une valeur de champ le contenu d'une autre varie.
| Par exemple : si champ1 = toto alors champ2= tata.
| Merci
| @+
| Angela
|| -----Message d'origine-----
|| Bonjour angela,
||
|| J'ai répondu à cette demande pas plus tard qu'hier. Fais une
|| recherche. C'était une question de guiralex à 22:32, objet :
|| formulaire...
||
|| Circé
||
||
||| bonjour à tous
||| voila, j'ai crée un formulaire avec des champs.
||| Je voudrai que le contenu de l'un de ces champs (que je
||| nommerai toto" varie selon le contenu d'un autre champs
||| (que je nommerai titi).
||| Comment dois je procéder???
||| Merci d'avance
||| Angela
|| .
Avatar
Anacoluthe
Coucou !

'Circé' nous a écrit ...
Alors dans ce cas, il te faut soit utiliser les champs IF, soit faire une
petite macro du type ...


Risqué pour ta carte d'AMIS ! Tu dis toi-même qu'on pourrait se
passer de macro... Heureusement que le début de ta macro est assez
compliqué pour décourager les imbriqueurs-fous de champs IF :-D )))

A++
Anacoluthe
« Bienheureux les travailleurs des champs. »
- VIRGILE

Avatar
Angéla
Dis m'en plus sur le champs IF
Un exemple serait le bien venu...
Merci d'avance
Angéla
Avatar
Geo
Bonjour Circé,


[...]
If a.Result = "TOTO" Then
b.Result = "TATA"
ElseIf a.Result = "BOBO" Then
b.Result = "BABA"
c.Result = "2141"
'etc...


ou un select case
plus simple à programmer,
plus simple à lire
plus simple à faire évoluer

A+

Avatar
Circé
Bonjour Angéla,

Pour tout savoir sur les champs, tu peux regarder ici :
http://faq.ms.word.free.fr/champs_didac_fichiers/frame.htm

Angéla wrote:
|| Dis m'en plus sur le champs IF
|| Un exemple serait le bien venu...

Un champ IF, oui, si tu n'as pas trop de cas, car ça devient vite ingérable
!... Par exemple ci-dessous, ça gère deux cas, tu peux en ajouter d'autres
bien sûr. Cet exemple prend le nom du signet par défaut du premier champ
Liste déroulante d'un formulaire (ListeDéroulante) et dit que dans le champ
texte (Texte1) si ce champ est égal à Geo, on aura le texte "club des
macroteurs", si on a Circé, on a "Club des AMIS",
sinon on a rien...

Pour connaître le nom du signet, on double clique sur le champ et on en
profite pour cocher la case "Calculer à la sortie".

{ IF { ListeDéroulante1 } = Geo "club des macroteurs" { IF {
ListeDéroulante1 } = Circé "Club
des AMIS" "" } }

Maintenant, cela dépend évidemment du nombre d'items de ta liste déroulante.
S'il y en a beaucoup, une macro sera plus simple...
Comme mes IF ne leur ont pas plu, le mieux est effectivement de suivre la
méthode de Geo que je reconnais bcp plus claire et facile à mettre en
oeuvre, et à modifier !!!
Je te donne un exemple ci-dessous, mais vaudrait mieux suivre les
indications des anti-AMIS !!! :-)))

Sub choisir()
Dim a, b
Set a = ActiveDocument.FormFields("ListeDéroulante1")
Set b = ActiveDocument.FormFields("Texte1")

Select Case a.Result
Case "geo"
b.Result = "MACROTEUR"
Case "Circé"
b.Result = "AMIS"
End Select

End Sub


|| Merci d'avance
|| Angéla
Avatar
Angéla
Merci Circé c'est super clair. Je vais de ce pas essayer
a plus
Angéla
Avatar
Angéla
Ca y est j'ai essayé.
Il y a un petit problème.
Dans ma liste déroulant j'ai des choix à plusieurs mots : du type Mr DPONT
Denis
Alors j'ai essayé de mettre tout ça entre guillemet mais ça ne marche pas.
Peut être que si je te dis que c'est sous Word 6 (Je ne l'ai pas dit avant
car j'en suis pas très fière...) ça changera quelque?!!!!
a plus
Angéla
Avatar
Circé
Ouille ouille ouille Angéla, Word 6 !!! C'est ancestral !!! :-))

J'ai du mal à faire remonter mes souvenirs jusque là !
En tous les cas, les champs sont en français, donc pas de IF mais des SI.
Pour ce qui est des groupes de mots, les guillemets devraient faire
l'affaire...

En n'en déplaise aux macroteurs, pas de VBA sur ce coup-là mais
éventuellement du WordBasic... Geo doit avoir quelques souvenirs !!!

Circé

Angéla wrote:
|| Ca y est j'ai essayé.
|| Il y a un petit problème.
|| Dans ma liste déroulant j'ai des choix à plusieurs mots : du type Mr
|| DPONT Denis
|| Alors j'ai essayé de mettre tout ça entre guillemet mais ça ne
|| marche pas. Peut être que si je te dis que c'est sous Word 6 (Je ne
|| l'ai pas dit avant car j'en suis pas très fière...) ça changera
|| quelque?!!!!
|| a plus
|| Angéla
1 2 3