#1 Fri 23 November 2007 20:01
- hanczyk
- Participant assidu
- Lieu: Châlons-en-Champagne
- Date d'inscription: 21 Apr 2006
- Messages: 596
Calcul entre ligne d'une table
Bonjour,
Ma version MI : 7.8
j'ai une table de plusieurs enregistrements : 250 points d'altitude environ
1 champ "nom" identifiant des points (A-B-C-D...)
1 champ "Z" altitude des points
comment mettre à jour un champ dont la valeur sera égale à :
altitude Z de A - altitude Z de B pour la ligne "B"
altitude Z de B - altitude Z de C pour la ligne "C"
altitude Z de C - altitude Z de D pour la ligne "D"
etc...
ce qui revient dans un tableur à la formule =A2-A1 par exemple
Jean-Marc Hanczyk
Hors ligne
#2 Fri 23 November 2007 20:56
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Calcul entre ligne d'une table
...ce qui revient dans un tableur à la formule =A2-A1 ...
La solution la plus commode est dans la question
Exporter la table (après avoir créé un identifiant unique !)
Traiter la table exportée avec Excel
L'ouvrir et faire une jointure par SQL avec la table d'origine, sur la base de l'identifiant unique
Hors ligne
#3 Sat 24 November 2007 10:28
- hanczyk
- Participant assidu
- Lieu: Châlons-en-Champagne
- Date d'inscription: 21 Apr 2006
- Messages: 596
Re: Calcul entre ligne d'une table
bonjour,
merci pour la réponse, c'est d'ailleurs ce que j'ai proposé à l'opérateur qui hélas ne maîtrise pas l'import l'export, d'où son souhait de ne travailler qu'avec MapInfo.
je vais donc l'initier à la manipulation MI vers un tableur et la mise à jour par jointure.
merci encore.
Jean-Marc Hanczyk
Hors ligne
#4 Sat 24 November 2007 11:03
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Calcul entre ligne d'une table
Si tu veux économiser du temps de formation... () il y aurait cette solution:
- créer un identifiant, par RowID, dans table1 ou figure le champ Z
- copier la table en table2
- mettre à jour dans table 2 l'identifiant par RowID+1
- créer dans table1 une colonne Z2 et la mettre à jour avec les valeurs de table2 qui ont le même identifiant que table1
On obtient une colonne Z2 ou sont les valeurs des Z de la ligne du dessus
et il suffit de la mettre à jour (dans table1, sur elle même) par Z2-Z
[EDIT Maurice] En réfléchissant mieux on doit pouvoir faire ce genre de manip au sein de table1, sans avoir à copier en table2
Mais c'est le WE...je te laisse réfléchir ça tout seul
Dernière modification par Maurice (Sat 24 November 2007 12:28)
Hors ligne
#5 Mon 26 November 2007 14:20
- FERNANE
- Participant actif
- Date d'inscription: 14 Sep 2005
- Messages: 139
Re: Calcul entre ligne d'une table
Bonjour,
Il y a bien longtemps, j'ai effectué ce genre d'opération.
Soit un morceau de MNT50, créer une colonne Z du point au dessus, une colonne du zNE en diagonale NE,.......etc dans une copie du fichier.
Créer aussi une colonne clé qui contiendra la concaténation du x et du y, et une colonne clé provisoire qui servira à mettre à jour chaque colonne z dans une autre copie du fichier. Cela permettra de faire la jointure de la colonne clé du premier fichier avec la colonne clé provisoire du deuxième fichier.
Calcul de la colonne clé provisoire exemple : concaténer (x-50 et y), la colonne z du fichier sera le z du point à gauche.
Mettre à jour colonne zgauche du premier fichier
etc...........
cordialement
Béatrice FERNANE
Tél : 03.81.61.53.57
Courriel : beatrice.fernane@ ecologie.gouv.fr
DIREN de Franche-Comté
5, rue du Général Sarrail
B.P. 137
25014 Besançon cédex
Tél. 03 81 61 53 33
Fax 03 81 81 24 96
Hors ligne