HELP! Script VBA pour ACCESS

Bernardin -  
 Bernardin -
Merci d'avance à celle ou celui qui aurra la gentillesse d'aider qqun qui croit connaitre, mais ne connais rien.
J'ai de bonne notion VBA Excel MAIS je patauge en ACCESS.

Ceci dit, je ne parvient pas à écrire le script qui attribuerait à une variable le n° de l'enregistrement courant comme dans la petite fenêtre en bas à gauche d'un formulaire .

Encore mille merci à qui me donnera de l'aide. Bise à tous

2 réponses

  1. jujeco
     
    Je cherche également ce script. J'ai contourné le probleme de la maniere suivante:
    dans la table source, je créé un champ compteur.

    dans le formulaire je reprend le champ comteur
    Ensuite en code voici à peut pret la démarche:
    je créé un recordset et je fait une boucle qui s'incrémante, jusqu'à trouver le n° du compteur.

    Exemple
    La table: Table1
    Le champ: num_ligne
    le champ dans le formulaire: num_ligne
    Le code:

    Function trouve()

    Dim Db as database
    Dim Rs as recodset

    set db=currentdb
    set rs=db.openrecordset("table1",dbOpenDynaset)

    i=0
    rs.movefirst
    Do until rs!num_ligne=me!num_ligne
    i=i+1
    Rs.movenext
    loop

    rs.close

    end function


    J'espere que cela repond à ta question.

    Tiend moi au courrant si tu trouves une solutions plus simple.
    0
    1. Bernardin
       
      Salut jujeco, désolé les jours passent mais j'ai pas toujours le temps.
      Merci de ta réponse, voici ce que j'ai trouvé ( pas tous seul ) pour mon problème qui n'est pas forcément le tien.

      Pas de "Recordset" mais comme toi j'ai un champ nomé "N°" avec numérotation auto et clé primaire. J'ai un listbox pour le quel je devais retouver le n° de l'enregistrement courant pour sélectioner celuici dans le listbox ici nomé "Listing".
      Alors pour sélectioner en surbrillance la ligne du listbox, je fais une boucle qui vérifie le champ de l'enregistrement en cour et le compare au champ du listbox ( ici Listing) le champ étant dans la prmière colonne, puis mes la sélection à vrai sinon à faux. la sélection vrai est en surbrillance.
      For i = 0 To Me.Listing.ListCount - 1
      
      If Me.Listing.Column(0, i) = CStr(Me.N°) Then
          Me.Listing.Selected(i) = True
      Else
          Me.Listing.Selected(i) = False
      End If
      Next i

      pourquoi Cstr, car le champ N° est un entier et que le champ N° du Listing est un String.

      Voilà peut être pouvons nous encore nous aider.
      0
      1. jujeco > Bernardin
         
        Pourquoi tu n'utilise pas

        Me!listing.column(0)=me!n°


        voir même

        Me!listing=me!n°


        Je pense que c'est plus simple?
        0
      2. jujeco > Bernardin
         
        Au fait, moi j'utilise cette methode pour remplacer les 5 fleches ainsi que les deux champs (1 pour indiquer le n° l'autre pour indiquer les nombre d'enregistrement) qui se trouve en bas des formulaires car je veux pouvoir les faire apparaitre en fonction du login utilisateur.
        0
  2. Bernardin
     
    Non car lorsque tu suprime un enr. le n° auto du champ N° est suprimé et ne revient jamais d'ou un décalage entre le n° de enr. en cour et celui du champ N°, au plus de supression au + de décalage.
    0