Erreur 424 sous Excel VBA

roudiroud Messages postés 36 Statut Membre -  
 Maurice -
Bonjour,

J'ai une erreur dans le programme suivant que j'ai récupéré et adapter à ma sauce.
Mais quand j'exécute le programme ce bloque et me dit : "objet requis erreur 424" !!!

J'ai beau regardé et reregarder mais je trouve pas :(

code:

Private Sub NomBgDepot_Change()
Dim Ligne As Long
Dim I As Integer
If Me.NomBgDepot.ListIndex = -1 Then Exit Sub
With Ws
Ligne = Me.NomBgDepot.ListIndex + 2
TxtDateRamassage = .Cells(Ligne, "B") -----> erreur 424
TxtDateRecette = .Cells(Ligne, "C")
TxtMontantAnnonce = .Cells(Ligne, "D")
TxtMontantReconnu = .Cells(Ligne, "E")
TxtNumEnveloppe = .Cells(Ligne, "F")
TxtDifférence = .Cells(Ligne, "G")
TxtMontantPrésumeFaux = .Cells(Ligne, "H")
TxtNomClient = .Cells(Ligne, "I")
TxtAdresse = .Cells(Ligne, "J")
TxtDomicile = .Cells(Ligne, "K")
TxtPortable = .Cells(Ligne, "L")
TxtMail = .Cells(Ligne, "M")
End With
End Sub

Merci

8 réponses

  1. Gyrus Messages postés 3360 Statut Membre 526
     
    Pour pouvoir utiliser une variable dans toutes les procédures d'un module, il faut la déclarer en début de module.
    Dim Ws As Worksheet
    Private Sub UserForm_Initialize()
    Set Ws = Sheets("Feuil1")
    End Sub
    Sub Private Sub NomBgDepot_Change()
    ' => Utilisation de Ws possible
    End Sub


    A+
    1
    1. roudiroud Messages postés 36 Statut Membre
       
      Merci, j'avais oublié que avec VBA il faut à chaque fois déclarer ces variriable ou le declarer au debut du module.

      Merci tu me sauve :)

      +
      0
  2. Gyrus Messages postés 3360 Statut Membre 526
     
    Bonjour,

    On ne voit pas comment est définie Ws.

    A+
    0
    1. roudiroud Messages postés 36 Statut Membre
       
      Ws est définie comme ma feuil1 dans mon classeur excel
      0
    2. roudiroud Messages postés 36 Statut Membre
       
      Private Sub UserForm_Initialize()
      Dim J As Long

      Set Ws = Sheets("Feuil1")
      With Me.NomBgDepot
      For J = 2 To Ws.Range("A" & Rows.Count).End(xlUp).Row
      .AddItem Ws.Range("A" & J)
      Next J
      End With



      End Sub
      0
  3. roudiroud Messages postés 36 Statut Membre
     
    Par contre j'ai toujours une erreur, de type " Erreur de compilation, variable non définie". pour TxtDateRecette.

    TxtDateRecette corespond à un textbox qui dois afficher lecontenue d'une cellule.

    Je sais pas si tu vois l'erreur ?
    0
  4. Gyrus Messages postés 3360 Statut Membre 526
     
    Comme ça, non je ne vois rien !

    Je verrai peut-être mieux si tu joints un fichier.
    Tu peux utiliser https://www.cjoint.com/

    A+
    0
    1. roudiroud Messages postés 36 Statut Membre
       
      http://www.cjoint.com/c/FDwmk4wFpJH

      voici-ci le lien

      Le problème c'est que toutes les données ne s'affichent pas dans les textbox
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Maurice
     
    Bonjour
    tu a beaucoup de faute
    voila de le début
      Set Ws = Sheets(Feuil1.Name)
      With Ws
        Ligne = Me.NomBgDepot.ListIndex + 2
        
        TextDateRamassage = .Cells(Ligne, "B")
    

    A+
    Maurice
    0
    1. roudiroud Messages postés 36 Statut Membre
       
      Oups je suis désolé, je ne suis pas très doué en Vba. Je travaille pas souvent sous l'univers Vb mais plutôt en SQL.

      Merci d'avoir pris du temps pour regarder :)
      0
    2. roudiroud Messages postés 36 Statut Membre
       
      je vois pas la différence de mon code par rapport au tiens, tu ma reécris la même chose ?
      0
  7. Maurice
     
    Bonjour
    voila plein de modifes a toi de voir ci ça te va

    http://www.cjoint.com/c/FDwoGeCB7BP

    A+
    Maurice
    0
    1. roudiroud Messages postés 36 Statut Membre
       
      Merci beaucoup pour les modifes;

      A+
      0
  8. Maurice
     
    Bonjour
    j'ais un peux jouer avec ton Userforme
    http://www.cjoint.com/c/FDxpMynW2PV

    A+
    Maurice
    0
    1. roudiroud Messages postés 36 Statut Membre
       
      Merci beaucoup pour ces modifs ;)

      elles sont plutôt cool ^^

      A+
      0
    2. roudiroud Messages postés 36 Statut Membre
       
      Salut Maurice

      je voudrais rajouter la supression de la ligne qui à été validé, j'ai cherché un peu mais je n'arrive pas à la supprimer ? aurais - tu une petit idée

      Merci encore :)
      0
  9. Maurice
     
    Bonjour
    il faut chercher un peux

    http://www.cjoint.com/c/FDAiE6m1Xvz

    A+
    Maurice
    0