Bonjour,
j'enregistrer mon datagridview en fichier de sortie fIchierEnployes.txt jusque là aucun souci :)
Mon problème c'est que le datagridview comporte six colonne de ma base .mdb la colonne 4 NetaPaye est numérique avec virgule, au cours de l'enregistrement je veux pas de la virgule dans le fichier de sotie exemple :
avec virgule
*0000000026540449712471,21PIERRE BRENT 1
*0000000000786954761255,00RUBEN DRIES 1
*0000000006530476781050,01SANDER THOMAS 1
...
sans virgule
*000000002654044971247121PIERRE BRENT 1
...
mon programme
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim numCols As Integer = DataGridView1.ColumnCount Dim numRows As Integer = DataGridView1.RowCount - 1 Dim strDestinationFile As String = "F:\MesPrg\\fIchierEnployes.txt" Dim LireTable As TextWriter = New StreamWriter(strDestinationFile)
For count As Integer = 0 To numRows - 1 For count2 As Integer = 1 To numCols - 1 LireTable.Write(DataGridView1.Rows(count).Cells(count2).Value) If (count2 <> numCols) Then 'ici je cherche a supprimer les virgules If count2 = 6 Then LireTable.Write(" ") 'ici je sépare le nom et prenom par un espace Else LireTable.Write("") End If End If
Next LireTable.WriteLine() Next LireTable.Close() End Sub
Merci encore à vous cs_ShayW
ça marche avec un tout petit "mais" ,
si les deux chiffres après la virgule "les deux décimales" du NetaPaye est zéro l'erreur suivante s'affiche
" ArgumentOutOfRangeException n'a pas été gérée ". La longueur ne peut pas être inférieure à zéro. Nom du paramètre : length "
A savoir, j'ai ajouté: " Imports System.Collections.Generic " dans l'espace de noms parce que "List(Of String)" type Liste non défini
les nouveaux lignes du code :
Dim NetaPaye As String Dim sep As String sep = Globalization.CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator
Dim numRows As Integer = DataGridView1.RowCount - 1 Dim listout As New List(Of String) Dim str As String
bonsoir cs_ShayW
L'erreur est à la ligne :
NetaPaye = NetaPaye.Substring(0, NetaPaye.IndexOf(sep)) & NetaPaye.Substring(NetaPaye.IndexOf(sep) + 1)
en faite le fichier txt sert dans un autre ancien programme de traitement de gestion de dépense et d'archive avec d'autre fichiers text "traçabilité informatique oblige" que je devrais copier et transmettre chaque mois, Ce fichier m'épargne de beaucoup de travail et de paperasses...
Bonjour
Oui ça marche :)
je risque gros avec mon bidouillage; plusieurs textbox et deux datagridview lier avec quelques essais de formatage de colonnes en Double, string... Ils ont eu raison de moi. :))
25 mars 2014 à 22:50
ça marche avec un tout petit "mais" ,
si les deux chiffres après la virgule "les deux décimales" du NetaPaye est zéro l'erreur suivante s'affiche
" ArgumentOutOfRangeException n'a pas été gérée ". La longueur ne peut pas être inférieure à zéro. Nom du paramètre : length "
A savoir, j'ai ajouté: " Imports System.Collections.Generic " dans l'espace de noms parce que "List(Of String)" type Liste non défini
les nouveaux lignes du code :
je vous tire mon chapeau.
25 mars 2014 à 23:17
pas chez moi
verifie si dans les réferences (project -> properties-> references)
system.collections.generic est coché
si les deux chiffres après la virgule "les deux décimales" du NetaPaye est zéro l'erreur suivante s'affiche
à quelle ligne tu as l'erreur
pourquoi tu dois te servir d'un fichier txt ,la bdd ne suffit pas ?
25 mars 2014 à 23:53
L'erreur est à la ligne :
NetaPaye = NetaPaye.Substring(0, NetaPaye.IndexOf(sep)) & NetaPaye.Substring(NetaPaye.IndexOf(sep) + 1)
en faite le fichier txt sert dans un autre ancien programme de traitement de gestion de dépense et d'archive avec d'autre fichiers text "traçabilité informatique oblige" que je devrais copier et transmettre chaque mois, Ce fichier m'épargne de beaucoup de travail et de paperasses...