#1 Wed 12 October 2011 13:21
- komine
- Participant assidu
- Date d'inscription: 25 Apr 2008
- Messages: 160
Calcul de surface (erreur ?)
Bonjour,
Je travaille sur ARGIS 9.3. Je veux calculer des surfaces. J’ai créé un champ dans la table des attributs avec un Type :Double.
Je clique sur « Field Calculator », cocher la case « Advanced », puis dans Pre-Logic VBA Script Code, j’écris le script suivant :
Code:
Dim Output as double Dim pArea as IArea Set pArea = [shape] Output = pArea.area
En dessous de l’intitulé “surface=”, J’écris Area.
- Mais ça ne marche pas et j’ai ce message d’erreur : error running VBA code : Fin d’instruction attendue
Pouvez-vous m’aider à voir ce qui ne marche pas ?
Merci d’avance
Hors ligne
#2 Wed 12 October 2011 13:29
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: Calcul de surface (erreur ?)
En dessous de l’intitulé “surface=”, J’écris Area
Essaye Output plutôt que Area
Hors ligne
#3 Wed 12 October 2011 13:47
- komine
- Participant assidu
- Date d'inscription: 25 Apr 2008
- Messages: 160
Re: Calcul de surface (erreur ?)
Merci conejo de votre réponse,
j'ai éssayé avec Output mais ça ne marche pas aussi. Le message d'erreur reste le même.
Merci
Hors ligne
#4 Wed 12 October 2011 14:02
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: Calcul de surface (erreur ?)
Trois pistes pour ton pb :
Ton champ doit être en réel double.
Ton shape ne doit pas avoir de jointure.
Sinon, tu fais ArcToolbox, rechercher "superficie", cela te calcule la surface, mais sur un nouveau shape.
Hors ligne
#5 Wed 12 October 2011 14:02
Re: Calcul de surface (erreur ?)
Bonjour,
doublé par conejo!
Sinon tu as l'option "calculer la géométrie" qui te retourne la surface (disponible si ton shp ou mxd est dans un système projeté)
martin
Dernière modification par nitram (Wed 12 October 2011 14:07)
Hors ligne
#6 Wed 12 October 2011 14:13
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Calcul de surface (erreur ?)
Trois pistes pour ton pb :
Il est possible aussi que Output soit un mot réservé à VBA.
-->
Code:
Dim Superficie as double Dim pArea as IArea Set pArea = [shape] Superficie = pArea.area
Mettre "Superficie" dans le champ en dessous du code
A+
Joël
Hors ligne
#7 Wed 12 October 2011 15:17
- komine
- Participant assidu
- Date d'inscription: 25 Apr 2008
- Messages: 160
Re: Calcul de surface (erreur ?)
Merci à tous pour vos réponses,
J'ai pu calculer les surfaces avec l'option "calculer la géométrie".
Cependant, je vais continuer pour voir pourquoi ça ne marche pas avec "Field Calculator".
Merci encore
Hors ligne