Bonjour à tous :hello: ,
voila j'arrive sur la dernière étape d'un classeur dans lequel j'ai développé quelques macros pour me faciliter un travail de saisie.
il s'agit maintenant d’exporter mes données au format XML "*.cxr" pour les importer ensuite dans un logiciel.
jusque là tout va bien. je généré le fichier et les tabulations sont au bon endroit.
par contre j'ai relevé un problème de taille ......:
- la mise en forme des nombres à virgule est modifié 950.10 devient 950,1
alors j'ai fais un test d'importation, après avoir remplacé les "," par des "." et le résultat final devient 950.01 ce qui n'est plus du tout la valeur voulu......
du coup j'ai deux questions:
Comment faire pour garder le bon nombre de décimales après la virgule.
Comment remplacer les virgule par des points
je vous met mon petit bout de code ci-dessous, la partie qui nous intéresse est compris entres les ligne 14 et 22.
pour info je n'utilise pas les librairies XML (Je ne sais pas comment on fait).
Merci d'avance pour votre aide
Code : 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 'Ecrit dans le fichier cxr 'Entête du fichier texte' Print #iFile, ("<LIBRARY>" ) Print #iFile, ("<COMMENT>" ) Print #iFile, (" Essai2" ) Print #iFile, (" </COMMENT>" ) Print #iFile, (" <PLCTYPE>" ) Print #iFile, (" CJ2M" ) Print #iFile, (" </PLCTYPE>" ) Print #iFile, (" <SYMBOL>" ) 'Création du tableau par une boucle '<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ar = Sheets("Format CX" ).Cells(5, 3).CurrentRegion.Value '// valeurs dans un array (plus rapide) For i = 1 To UBound(ar, 1) '// boucle sur les lignes str = "" For j = 1 To UBound(ar, 2) '// boucle sur les colonnes str = str & ar(i, j) & vbTab '// valeurs séparées par tabulations Next j Print #iFile, str '// écrire dans le fichier Next i '<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 'Pied de page du fichier texte Print #iFile, (" </SYMBOL>" ) Print #iFile, (" </LIBRARY>" ) Close #iFile '// Fermer le fichier
Pour info, voici le rendu final dans le fichier *.CXR
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Entrée_NX WORD 900 Entrées_Rack_NX 0 IN Sortie_Nx WORD 950 Sortie_Rack_NX 0 OUT RM_AG_Préparation_Floc BOOL 901, DESH_AG5141 0 RM_AG_cuve_Coagulation BOOL 901,01 DESH_AG6101 0 DEF_Ppe_Dos_Coagulant BOOL 901,03 DESH_PD5111 0 DISJ_Ppe_Dos_Coagulant BOOL 901,04 DESH_PD5111 0 DEF_Ppe_Dos_pH BOOL 901,05 DESH_PD5121 0 DISJ_Ppe_Dos_pH BOOL 901,06 DESH_PD5121 0
Partager