Question
Importation et modification d'un fichier CSV
- VIGNES
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 1
- Remerciements reçus 0
il y a 2 ans 7 mois - il y a 2 ans 7 mois #31323
par VIGNES
Importation et modification d'un fichier CSV a été créé par VIGNES
Bonjour à tous je viens de commencer le powershell cette semaine.
Je dois concaténer les informations d'un fichier csv et les réorganiser pour quelles soient assimilés dans un progiciel de transport.
La fracture de mon fichier "export_515" se fait au niveau de la colonne "Transport".
Je cherche donc à additionner "NbPalSolPlan", "PoidsPlan","Total" pour chaque référence de transport.
Problèmes:
-Je n'arrive pas à définir les valeurs de Total comme décimal.(Je pense que la virgule pose problème)
-Je n'arrive pas à additionner le nombre de palettes
-Le poids est OK pour ma première sortie mais incorrectes pour la deuxième
Les résultats que je devrai trouver si le script était bon: -Première sortie (Nbpalettes=33 / Poids=5603.478/ Prix=880.01)
-Deuxième sortie(Nbpalettes=11 / Poids=1368.476/Prix=1050.01)
Je pense que mon code est mal structuré dans le sens où j'affecte les valeurs de la ligne juste avant de faire une sortie vers mon fichier csv final.
Je vous laisse redéfinir les variables $path et $thepath.
Il faudra changer l'extension .txt en .csv
Merci d'avance pour vos pistes et votre aide.
Je dois concaténer les informations d'un fichier csv et les réorganiser pour quelles soient assimilés dans un progiciel de transport.
La fracture de mon fichier "export_515" se fait au niveau de la colonne "Transport".
Je cherche donc à additionner "NbPalSolPlan", "PoidsPlan","Total" pour chaque référence de transport.
Problèmes:
-Je n'arrive pas à définir les valeurs de Total comme décimal.(Je pense que la virgule pose problème)
-Je n'arrive pas à additionner le nombre de palettes
-Le poids est OK pour ma première sortie mais incorrectes pour la deuxième
Les résultats que je devrai trouver si le script était bon: -Première sortie (Nbpalettes=33 / Poids=5603.478/ Prix=880.01)
-Deuxième sortie(Nbpalettes=11 / Poids=1368.476/Prix=1050.01)
Je pense que mon code est mal structuré dans le sens où j'affecte les valeurs de la ligne juste avant de faire une sortie vers mon fichier csv final.
Je vous laisse redéfinir les variables $path et $thepath.
Il faudra changer l'extension .txt en .csv
Merci d'avance pour vos pistes et votre aide.
Pièces jointes :
Dernière édition: il y a 2 ans 7 mois par VIGNES .
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
Réduire
Plus d'informations
- Messages : 1778
- Remerciements reçus 21
il y a 2 ans 7 mois #31325
par Philippe
Réponse de Philippe sur le sujet Importation et modification d'un fichier CSV
salut vignes
si j'ai bien compris les additions sur cette et les suivante ne fonctionne pas :
$Poids=$Poids+$($line.PoidsPlan)
c'est du que le format des valeurs lors de import du CSV est en string, donc impossible de faire un addition de deux chaines de caractères !!!
il faut indiquer que tu travail avec des valeurs décimales
$Poids = [float]$Poids + [float]$($line.PoidsPlan)
mais il y aussi le problème du séparateur décimal qui doit normalement etre un point et pas une virgule
une solution :
$Poids = [float]$Poids + [float]$($line.PoidsPlan).replace(',', '.')
il serait plus propre de demander a PowerShell de considéré une virgule comme séparateur mais je retrouve plus la variable à changer
si j'ai bien compris les additions sur cette et les suivante ne fonctionne pas :
$Poids=$Poids+$($line.PoidsPlan)
c'est du que le format des valeurs lors de import du CSV est en string, donc impossible de faire un addition de deux chaines de caractères !!!
il faut indiquer que tu travail avec des valeurs décimales
$Poids = [float]$Poids + [float]$($line.PoidsPlan)
mais il y aussi le problème du séparateur décimal qui doit normalement etre un point et pas une virgule
une solution :
$Poids = [float]$Poids + [float]$($line.PoidsPlan).replace(',', '.')
il serait plus propre de demander a PowerShell de considéré une virgule comme séparateur mais je retrouve plus la variable à changer
Les utilisateur(s) suivant ont remercié: VIGNES
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.236 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Importation et modification d'un fichier CSV