Vba problème avec bouton

Résolu
Bonjour,
Quand je clique sur le seul bouton de la feuille, je bloque ici :


Je ne comprends pas pourquoi.
Merci de m'expliquer Svp

8 réponses

  1. Bonjour,

    Il est possible que tu n'aies pas d'userform appelé "Userfom_Fiches".

    Quel est le libellé et le code de l'erreur ?

    Cordialement.

    Daniel
    0
    1. Bonjour Daniel et merci de me répondre
      J'ai bien un Usf nommé UserForm_Fiches et me code erreur est 1004
      0
      1. Mets ton classeur, sans données confidentielles sur cjoint.com, mon-partage.fr ou autre et poste le lien correspondant.

        Daniel
        0
        1. Désolé
          https://www.cjoint.com/c/HIhuZg6aUPb
          0
          1. taper : a et a
            0
          2. Bonjour,

            Apparemment, la feuille "Fiche" est protégée et tu essaies d'effacer le contenu des fiches au moment de l'affichage de l'userform. Tu dois déprotéger la feuille d'abord, ou déverrouiller les cellules concernées.

            Daniel
            0
          3. Bonjour,
            Effectivement, la feuille Base est vide, mais c'est sans doute volontaire. Ajoute un nom et une date de baptême dans les données.
            Cordialement.
            Daniel
            0
        2. Contributeur Ambassadeur
          bonjour, il y a plusieurs boutons, et ils me semblent tous bien fonctionner.
          cependant, il y a une erreur sur la ligne redim suivante, probablement parce que tu n'as pas prévu la situation où personne ne serait déclaré dans la feuille "base".
          Private Sub ChargeT()
          (...)
          ReDim T(1 To BaseNbLig - BaseLig0, 1 To 5) 

          je suggère de tester le fichier avant de le partager.
          0
          1. Bonjour Daniel, yg_be
            Merci de me venir en aide
            Le problème se situe sur la feuille Fiche
            0
            1. Bonjour,

              Apparemment, la feuille "Fiche" est protégée et tu essaies d'effacer le contenu des fiches au moment de l'affichage de l'userform. Tu dois déprotéger la feuille d'abord, ou déverrouiller les cellules concernées.
              Il faut modifier la macro

              Private Sub ClearFiches()
              
                  Dim i, Décalage As Integer
                  Dim Lig, Col As Integer
                  Sheets(FicheNomFeuille).Unprotect
                  For Décalage = 0 To 30 Step 30
                      For i = LBound(TCellsFiche) To UBound(TCellsFiche)
                          Lig = Range(TCellsFiche(i)).Row
                          Col = Range(TCellsFiche(i)).Column
                          Sheets(FicheNomFeuille).Cells(Lig, Col + Décalage).Value = ""
                              If TBaseColFiche(i) = BaseColTéléphoneMaison _
                              Or TBaseColFiche(i) = BaseColTéléphonePortable _
                              Or TBaseColFiche(i) = BaseColTéléphoneBureau Then
                                  Sheets(FicheNomFeuille).Cells(Lig, Col).Font.Color = 0
                                  Sheets(FicheNomFeuille).Cells(Lig - 1, Col + 4 + Décalage).Value = ""
                                  Sheets(FicheNomFeuille).Cells(Lig - 1, Col + 4 + Décalage).Font.Color = 0
                              End If
                          Next i
                  Next Décalage
                  Sheets(FicheNomFeuille).Protect
              End Sub
              


              J'ai ajouté Les lignes :

              Sheets(FicheNomFeuille).Unprotect
              Sheets(FicheNomFeuille).Protect


              Si la feuille est protégée avec un mot de passe, il faut mettre :

              Sheets(FicheNomFeuille).Unprotect "XXX"
              Sheets(FicheNomFeuille).Protect "XXX"
              


              Remplace XXX par le mot de passe.

              Daniel
              0
          2. Bonjour Daniel
            Tu as vu juste, j'avais effectivement une cellule qui restait protégée
            Je te remercie sincèrement
            0