utiliser les enregistrements d'une table Access en VBA

utiliser les enregistrements d'une table Access en VBA - VB/VBA/VBS - Programmation

Marsh Posté le 09-07-2007 à 13:50:10    

Je début actuellement sur VBA  et je souhaite récuperer des enregistrements dans une table pour pouvoir les attribuer à différentes variables et les travailler entre elles et je n'y arrive pas voici mon code à l'heure actuelle:
              Dim r_test as DAO.Recordset
              Dim R_All As String
              Dim evt_ID As Variant
 
               R_All = "Select * From T_tempChoixID
               Set r_test = CurrentDb.OpenRecordset(R_All, dbOpenForwardOnly, dbReadOnly)
               evt_ID = r_test![ID_choix]
 
Mais en faisant ça, je ne recupère que mon premier enregistrement (je l'affiche avec MsgBox evt_ID)
Or je sais compter le nombre d'enregistrement que j'ai et je voudrais comme en php pouvoir attribuer mes variables en ayant evt_ID[1];evt_ID[2]... et ainsi de suite pour pouvoir les utiliser dans une boucle.
Merci d'avance

Reply

Marsh Posté le 09-07-2007 à 13:50:10   

Reply

Marsh Posté le 09-07-2007 à 14:02:03    

Faire :

 Dim r_test as DAO.Recordset  
   Dim R_All As String  
   Dim evt_ID(100) As Variant  
   Dim lg_num
 
   R_All = "Select * From T_tempChoixID  
   Set r_test = CurrentDb.OpenRecordset(R_All, dbOpenForwardOnly, dbReadOnly)  
 
   lg_num = 1
   While Not r_test.EOF  ' tant qu'il y a des lignes de résultat pour la requete
 
      If (lg_num > 100) Exit While
 
      evt_ID(lg_num) = r_test![ID_choix]
      lg_num = lg_num + 1
 
      ...
 
      r_test.MoveNext  ' passe à la ligne de résultat suivante
 
   Wend


Message édité par olivthill le 09-07-2007 à 14:08:52
Reply

Marsh Posté le 09-07-2007 à 15:01:53    

merci c'est super sympa de répondre vite et c'est vrai que j'ai du mal à transcrire ce que je sais faire en php vers VB et là c'est exactement ce que je cherchais

Reply

Marsh Posté le 06-05-2009 à 07:59:46    

J'ai un souci. J'ai une table  Access avec deux champs dimension et pondération. Je veux mettre que le champ pondération se remplisse automatiquement en fonction des données du champ dimension. C'est à dire je veux mettre les conditions suivantes sur le champ dimension:
 
if dimension >= 1,2 than ponderation =1
else
if dimension <1,2 & > 0,8 than ponderation =2
else
if dimension < 0,8 than ponderation =3
 
Aidez-moi car je sais pas comment utiliser VBA dans un champ access.
 
Merci
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed