Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Tue 09 September 2008 22:01

lionel18
Participant occasionnel
Date d'inscription: 5 Feb 2008
Messages: 27

Arcview 9.2 SP5 - réaliser des étiquettes à partir de plusieurs champs

Bonjour,

J’aimerais savoir comment faire une étiquette avec les valeurs ajoutées les unes après les autres de plusieurs champs, sachant que certains champs n’ont pas de valeur et qu’il ne faut pas de valeur <nul> dans mon étiquette. J’ai pensé faire un dernier champ où additionner les valeurs de mes champs. Cependant, il ne faut pas d’espaces dans le résultat de mon addition. J’espère que mon explication est claire.

Merci beaucoup,

Lionel18

Hors ligne

 

#2 Wed 10 September 2008 11:01

freesnowpetrel
Participant assidu
Lieu: Pretoria, Afrique du Sud
Date d'inscription: 1 Mar 2007
Messages: 222

Re: Arcview 9.2 SP5 - réaliser des étiquettes à partir de plusieurs champs

Bonjour,

Dans les proprietes de ta couches, tu as un onglet labels (etiquettes) et dans cet onglet un bouton Expression si tu clique dessus, une nouvelle fenetre s'ouvre dans laquelle tu peux entrer une expression VBScript qui va te permettre de tester pour chacun de tes champs s'il est vide ou pas et selon le cas de le concatener ou pas avec tes autres champs. Si tu ne sais pas comment faire clic sur le bouton aide, il y a quelques exemples d'expressions qui devrait t'aider. Attention il faut cocher la case advanced

quelques exemples:

- pour concatener 2 champs:

Code:

 [champ1] & [champ2]

- pour ce que tu veux faire ce doit etre quelque chose comme ca:

Code:

Function FindLabel ( [champ1] , [champ2]  )
    if (not isnull( [champ1] )) then  
        label = [champ1]
    end if
    if (not isnull( [champ2] )) then  
        label = label & " " & [champ2] 
    end if
    FindLabel = label
End Function

Attention aux espaces avant et apres chaque nom de champs, ArcGIS est tres capricieux la dessus.

Rodolphe

Dernière modification par freesnowpetrel (Wed 10 September 2008 11:36)

Hors ligne

 

#3 Wed 10 September 2008 11:06

Joel
Juste Inscrit !
Date d'inscription: 9 Jul 2008
Messages: 1

Re: Arcview 9.2 SP5 - réaliser des étiquettes à partir de plusieurs champs

[EDIT] grilled par Freesnowpetrel ;-)


Bonjour,

il faut que tu utilises le générateur d'expressions (propriétés de la couche, onglet etiquettes, bouton expression) en mode avancé éventuellement, ce qui te permettra de mettre du code VBscript pour mettre des conditions If Then par exemple si tu ne veux pas de blancs, de nuls ou autres.

Un peu compliqué mais dans l'aide il y a des exemples que tu peux récupérer en principe.

Bon courage,

Joël

Dernière modification par Joel (Wed 10 September 2008 11:08)

Hors ligne

 

#4 Wed 10 September 2008 12:40

lionel18
Participant occasionnel
Date d'inscription: 5 Feb 2008
Messages: 27

Re: Arcview 9.2 SP5 - réaliser des étiquettes à partir de plusieurs champs

OK, merci beaucoup, je vais regarder ça attentivement et revoir les expressions VBScript.

Lionel18

Hors ligne

 

Pied de page des forums

Powered by FluxBB