Je voudrais ecrire les donnees de ma flexgrid dans un fichier texte pour qu'il les enregistre afin qu'il revienne a chaque ouverture du formulaire contenant la flexgrid
j'ai repris une fonction existante sur le site que j'appelle par le click d'un bouton de commande mais rien ne se passe????
///////////////
Code
///////////////
Private Sub cmdEnregistrer_Click()
Call ExportGridToFile(flex1, strFileName, strSep)
End Sub
Public Function ExportGridToFile(flex1 As MSFlexGrid, ByVal strFileName As String, _
Optional ByVal strSep As String = vbTab) As Boolean
Dim intFreeFile As Integer 'Numéro du fichier
Dim intCol As Integer, intRow As Integer 'Indices de ligne et colonne de W
Dim ligne As String 'La ligne à écrire dans le fichier
On Error GoTo ExportGridToFile_ERR
'Prend le prochain numéro de fichier
intFreeFile = FreeFile
'Ouvre le fichier en bloquant son accès aux autres applications
Open App.Path & strFileName For Output Access Write Lock Read Write As #intFreeFile
With flex1
'Pour chaque ligne
For intRow = .FixedRows To .Rows - 1
ligne = ""
'Pour chaque colonne
For intCol = .FixedCols To .Cols - 1
'Ajoute la valeur de la cellule
ligne = ligne & .TextMatrix(intRow, intCol) & strSep
Next intCol
'Enlève le séparateur final
If strSep <> "" Then ligne = Left(ligne, Len(ligne) - 1)
Print #intFreeFile, ligne
Next intRow
End With
'Valide le bon fonctionnement de la fonction
ExportGridToFile = True
ExportGridToFile_FIN:
Close #intFreeFile + 1
Exit Function
quelle est la valeur de ExportGridToFile à la fin de la Fonction ? si la valeur est False c'est qu'il y a eu une erreur avant l'écriture du fichier. Pour que VB affiche l'erreur, essaye de mettre temporairement une rem devant la ligne On Error GoTo ExportGridToFile_ERR et relance le programme sous VB, c'est-à-dire sans être compilé ...
Pour conseildg < Le . devant fixedRows ou Rows, etc ... est tout àç faitr correct. On est en effet dans une portion de code entre un With NomObjet et un End With ... Donc mettre .FixedRows, revient à taper NomObjet.FixedRows. C'est ok pour la syntaxe. De toute façon s'il avait une erreur de syntaxe, son code bloquerait.