Bonjour,
En attendant de choisir la méthode de création des tables, je m'attaque à l'import des données.
Et, dans un premier temps, il me faut créer une table de correspondance pour les anciennes familles d'articles, vers les nouvelles.
Comme tout est dans des fichiers excel, je me suis dit, hop, j'utilise xlsDocument (je ne connaissais pas, en Wd 5.5, je faisait par OLE).
Mais, j'ai un problème. Mon fichier n'est pas modifié !
Voici le code
Code WLangage : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 LOCAL lo_xlsOut est un xlsDocument lo_xlsIn1 est un xlsDocument lo_XlsIn2 est un xlsDocument lin_NoLigOut est un entier lin_TotOut est un entier lin_noLigIn est un entier lch_CodFam est une chaîne lch_NlleFam est une chaîne lch_Cherche est une chaîne lbo_Trouve est un booléen lo_Cellule est un xlsCellule lo_xlsOut = xlsOuvre("J:\Documents\Projet ERP\Analyse\Familles articles\FAMART.XLSX",xlsEcriture) //Là je récupère la nouvelle famille, en cherchant dans les classeurs lo_xlsIn1 et lo_xlsin2 //Ça fonctionne, je récupère bien la valeur attendu //C'est là que ça se gâte ! SI lbo_Trouve ALORS Trace( ChaîneConstruit( "[%1]",lo_xlsOut..Cellule[ lin_NoLigOut, "C"])) lo_Cellule = lo_xlsOut..Cellule[ lin_NoLigOut, "C"] Trace(ChaîneConstruit( "Cellule [%1]",lo_Cellule)) lo_Cellule = lch_NlleFam Trace(ChaîneConstruit( "Après affectation Cellule [%1]",lo_Cellule)) lo_xlsOut[ lin_TotOut, "C"] = lo_Cellule Trace( ChaîneConstruit( "Après affectation [%1]",lo_xlsOut[ lin_NoLigOut, "C"])) lo_xlsOut[lin_NoLigOut, "C"] = "DIODE" Trace( ChaîneConstruit( "Après 2eme affectation [%1]",lo_xlsOut[ lin_NoLigOut, "C"])) fin
Voilà le résultat des Traces
"DIODE" est bien le nom de la nouvelle famille
Donc, la variable xlsCellule (lo_cellule) est bonne, mais le classeur n'est pas modifié !
Qu'est-ce que je rate ?
A noter, que, étant passé à Windev 26 (oui, je sais, faut être malade), j'ai essayé ce code en WD24 et j'obtiens le même résultat
J'ai essayé avec 3 à la place "C"
J'ai essayé en passant par la propriété ..Valeur
Mais rien n'y fait !
Merci de votre aide
JS
Partager