Sauver MSFlex Grid VB6

Résolu
Bonjour,
Avant de sauver j'ai les titres des colonnes row 0 et 5 noms col 0 puis des chiffres dans col 2 à 5 et les fow 1 à 4
Je call Sauver comme suit:

Hello,
Before saving I have the titles of the columns row 0 and 5 names col 0 then numbers in col 2 to 5 and fow 1 to 4
I call Save as follows:
'******************************************************
Private Sub SauverListe()
' Save the FlexGrid data.
Dim file_name As String
Dim fnum As Integer
Dim max_row As Integer
Dim max_col As Integer
Dim L As Integer
Dim C As Integer
    file_name = App.Path
    If Right$(file_name, 1) <> "\" Then file_name = _
        file_name & "\"
    file_name = file_name & "MSFlexGrid1.dat"

    fnum = FreeFile
    Open file_name For Output As fnum

    ' Save the maximum row and column.
    max_row = MSFlexGrid1.Rows - 1
    max_col = MSFlexGrid1.Cols - 1
    Write #fnum, max_row, max_col

    For L = 0 To max_row
        For C = 0 To max_col
            Write #fnum, MSFlexGrid1.TextMatrix(L, C);
        Next C
        Write #fnum,
    Next L

    Close fnum
End Sub

'*****************************************************
Ceci fait, il n,y a aucun changement.
Je ferme et redémarre VB6
Le fichier n'a pas été sauver et il est vide.
Quelqu'un pourrait trouver mon erreur?


This done, there is no change.
I close and restart VB6
The file was not saved and it is empty.
Could someone find my mistake?thank you,
Merci, Thanks

Jean-Claude

5 réponses

  1. Contributeur
    bonjour, si tu supprimes le fichier, est-il créé par ce code?
    0
    1. Bonjour a tous,

      Chez moi, le fichier est bien cree avec le code mis a dispo.



      0
      1. Bonjour,

        Je ne comprend pas ce que signifie votre réponse

        --
        0
        1. Avec votre code, je n'ai pas de problème de sauvegarde du contenu MSflexgrid(premiere image) dans un fichier(deuxième image)
          C'est bien votre problème:
          -pas de sauvegarde du contenu MSflexgrid avec votre code, oui ou non?
          0
      2. Bonjour,,

        Non, le sauvetage ne passe pas.

        max_row = 0 et max_col = 0
        Je les ai modifiés: max_row = 73 et max_col = 13

        ‘***********************************************************
        Private Sub Sauver()
        ' Save the FlexGrid data.
        Dim file_name As String
        Dim fnum As Integer
        Dim max_row As Integer
        Dim max_col As Integer
        'Dim L As Integer
        Dim C As Integer
        file_name = App.Path
        If Right$(file_name, 1) <> "\" Then file_name = _
        file_name & "\"
        file_name = file_name & "tfgBullard.dat"
        fnum = FreeFile
        Open file_name For Output As fnum
        ' Save the maximum row and column.
        max_row = 73
        max_col = 13
        Write #fnum, max_row, max_col
        For L = 0 To max_row
        For C = 0 To max_col
        Write #fnum, tfgBullard.TextMatrix(L, C);
        Next C
        Write #fnum,
        Next L
        Close fnum
        End Sub
        Ça fonctionne jusqu’à : Write #fnum, tfgBullard.TextMatrix(L, C);
        J’ai l’erreur Run-time 424 Object required
        Merci beaucoup pour votre aide

        Jean-Claude

        --
        0
        1. Bonjour,

          Quand vous avez l'erreur, click sur debug si boite erreur, passez le curseur souris sur:
          tfgBullard.TextMatrix(L, C)

          afin de voir le contenu de L,C et
          tfgBullard.TextMatrix(L, C)


          Dans le code que j'ai utilise, il y a une petite difference au niveau ligne/colonne.
           ' Save the maximum row and column.
              max_row = FlexSel.Rows - 1
              max_col = FlexSel.Cols - 1

          et le reste est identique
          0
      3. Bonjour,

        J'ai enfin réussi

        Merci

        --
        0