PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → importer csv dans table
importer csv dans table
Débuté par lolodev, 12 oct. 2020 16:57 - 7 réponses
Posté le 12 octobre 2020 - 16:57
bonjour

j'ai un csv composé de 6 lignes de 10 valeurs séparées ;
ne voyant pas de fonction qui importe directement dans une table, je suppose qu'il faut le coder ?

Merci
Membre enregistré
2 566 messages
Popularité : +222 (260 votes)
Posté le 12 octobre 2020 - 21:35
Oui il faut le coder.

--
Cordialement,

Philippe SAINT-BERTIN
Posté le 12 octobre 2020 - 21:59
Bonsoir,

Il faut utiliser la fonction HImporteTexte().
Nous réalisons cela 10 fois par jour avec succès (240 000 lignes importées dans un table avec succès).

Cordialement,

Thierry
Posté le 13 octobre 2020 - 07:15
bonjour,

himportetexte importe dans un fichier pas une table
Posté le 13 octobre 2020 - 08:05
voici

c'est perfectible
le nombre de colonne de la table est dans ncol pour ranger les valeurs du csv

i est un entier = 1
n est un entier = 1
ncol est un entier = 10
nligne est un entier
sLigne est une chaîne
sSep est une chaîne
sres est une chaîne
sCsv est une chaîne = VY.ERR_JUST_DYN_1
nRes est un entier = ChaîneOccurrence(sCsv,";")+1
nligne = nRes/ncol
SI modulo(nRes,ncol)>1 ALORS nligne++
BOUCLE (nligne)
BOUCLE
sres = ExtraitChaîne(sCsv,i,";")
SI sres=EOT ALORS SORTIR
sLigne+=sSep + sres
sSep=TAB
i++
À FAIRE TANTQUE i<n*ncol+1
TableInsère(pesee_1,sLigne,n)
sSep=""
sLigne=""
n++
FIN
Membre enregistré
97 messages
Popularité : +1 (1 vote)
Posté le 20 octobre 2020 - 17:48
personnellement ,j'aurais utiliser 'remplace' pour remplacer le point-virgule par le table dans chaque ligne; tu aurais gagné en temps et en lisibilité de code.
Membre enregistré
1 623 messages
Popularité : +100 (114 votes)
Posté le 22 octobre 2020 - 10:14
Hello

Il est aussi possible d'utiliser chaineVersTableau pour creer un tableau a 2 dimensions et le parcourir (a partir du CSV)
https://doc.pcsoft.fr/?1000017008&name=chaineverstableau_fonction
Membre enregistré
170 messages
Popularité : +18 (18 votes)
Posté le 22 octobre 2020 - 10:51
Bonjour,

Et pourquoi pas HImporteXLS(), un fichier csv pouvant être facilement ouvert et converti par openOffice/Excel.

=> une ligne de code :

HImporteXLS(Client, "C:\MesFichiers\Client.xls", 1, "", hImpCreation)


--
Hth,
Padbrain