Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1302 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Lire une table sous access

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Lire une table sous access

n°807221
kyosu
Posté le 27-07-2004 à 08:46:21  profilanswer
 

Encore besoin d'aide, j'aimerais créer une boucle pour lire toutes les lignes d'une table jusuq'à atteindre le dernier enregistrement.
Je veux lire la valeur à la ligne 0, puis celle ligne 1..... jusqu'à ligne n.
 
En vous remerciant d'avance

mood
Publicité
Posté le 27-07-2004 à 08:46:21  profilanswer
 

n°807234
prog1001
Posté le 27-07-2004 à 09:04:11  profilanswer
 

Lit toutes les valeurs de chaques enregistrements et les mets dans une MSFLEXGRID.
 

Code :
  1. Sub LitEnregistrement()
  2.    Dim conn As ADODB.Connection
  3.    Dim rst As ADODB.Recordset
  4.     Set conn = New ADODB.Connection
  5.     With conn
  6.         .Provider = "Microsoft.JET.OLEDB.4.0"
  7.         .Open Adresse_de_la_bdd
  8.     End With
  9.     Set rst = New ADODB.Recordset
  10.    
  11.     With rst
  12.         .ActiveConnection = conn
  13.         .Open "SELECT * FROM table", conn, adOpenDynamic, adLockBatchOptimistic
  14.     End With
  15.    
  16.     If rst.Fields.Count <> 0 Then
  17.    
  18.     Dim i%
  19.     Dim t%
  20.    
  21.     MSFlexGrid1.Rows = 2
  22.    
  23.     Do While Not rst.EOF = True
  24.         For t = 0 To rst.Fields.Count - 1
  25.             If Not IsNull(rst.Fields(t).Value) Then
  26.             MSFlexGrid1.TextMatrix(i + 1, t) = rst.Fields(t).Value
  27.             End If
  28.         Next t
  29.        
  30.         i = i + 1
  31.         rst.MoveNext
  32.         MSFlexGrid1.AddItem ""
  33.     Loop
  34.    
  35.     End If
  36.     Set rst = Nothing
  37.     conn.Close
  38. End Sub


 
 :)


Message édité par prog1001 le 27-07-2004 à 09:04:36
n°807238
kyosu
Posté le 27-07-2004 à 09:08:30  profilanswer
 

Je te remercie je vais essayer cela en esperant avoir bien compris

n°807241
prog1001
Posté le 27-07-2004 à 09:11:21  profilanswer
 

il faut référencé Microsoft ActiveX Data Objects (version la plus récente, c'est mieux).

n°807280
kyosu
Posté le 27-07-2004 à 09:40:10  profilanswer
 

bien compliqué je ne suis qu'un novice...
En fait ca ne fonctionne pas
 
J'ai une table qui référence mes mails par type d'affaire
genre:  
Aff001 - Mail Entrant - Date - Ref
Aff002 - Mail Sortant - Date - Ref
Aff001 - Mail Entrant - Date - Ref
Aff001 - Mail Entrant - Date - Ref
 
J'ai un sélecteur ou je choisis mon affaire et j'aimerais que dans une case il me donne le nombre de mail déja enregistré sur cette affaire, J'ai besoin de cette valeur pour numeroter mes mails par affaire.
genre si je choisis l'affaire Aff001, il doit me renvoyer 3, le mail que j'enregistrerait en suivant aura comme réf. 4.
Le problème que j'essaie de passer est que si je choisis Aff003, n'ayant aucun mail il doit me renvoyer 0
 
je ne sais pas si j'ai ete clair.
 
Merci d'avance

n°807307
prog1001
Posté le 27-07-2004 à 09:59:25  profilanswer
 

heu tu fait bien ça sur VB6 au moins parceque si c'est sur access la je ne sais pas faire.
 
si j'ai bien compris il faut faire une requete pour compter le nombre d'affaire pour l'utiliser comme nouvelle ref pour le prochain mail.
 
mais avant tous est tu sûre d'avoir référencé 'Microsoft data obj....'
-Menu projet
-Référence...
-Microsoft ActiveX Data Objects 2.7 library (dans la liste)

n°807325
kyosu
Posté le 27-07-2004 à 10:13:30  profilanswer
 

VB6 je suppose !!!
 
pour référencé ca je ne sais pas...

n°807336
prog1001
Posté le 27-07-2004 à 10:30:23  profilanswer
 

Pour référencé :
-Menu projet
-Références...
-Microsoft ActiveX Data Objects 2.7 library (a coché dans la liste dans la liste)
 
il faut que tu place une MSflexgrid (dans projet/composants/Microsoft FlexGrid...)
 
que tu mettes le code vu plus haut. et que tu appelle la procédure
Ex :
 
Private sub Form_Load()
call LitEnregistrement
End sub
 
il faut changer dans le code Adresse_de_la_bdd et table
 
si ça ne marche toujour pas dit-moi ou ça bug


Message édité par prog1001 le 27-07-2004 à 10:31:01
n°814649
energiez
Posté le 04-08-2004 à 11:59:00  profilanswer
 

Tine, une autre méthode, moins performante, mais beaucoup plus simple celon moi:
http://www.supinfo-projects.com/fr [...] donnees_vb


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Lire une table sous access

 

Sujets relatifs
[ACCESS] Impossible de mettre un combo box.[Access]Problème date pour faire une recherche genre "mois dernier"
Mise à jour des champs d'une tablePb SQL SERVEUR / ACCESS : éxecuter une procedure stockée
[Access] Installer les pilotes ODBCRetourner le dernier element d'une table
[ C# ] problème "access denied"Tables liées sous access
[MYSQL] Suppression d'enregistrements avec une jointure de table[ACCESS/VB] MSFlexgrid
Plus de sujets relatifs à : Lire une table sous access


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR