cokinoumasterflash
Messages postés62Date d'inscriptionjeudi 16 juin 2005StatutMembreDernière intervention19 août 2005
-
30 juin 2005 à 10:25
cokinoumasterflash
Messages postés62Date d'inscriptionjeudi 16 juin 2005StatutMembreDernière intervention19 août 2005
-
30 juin 2005 à 11:11
Bonjour,
Je suis en train d'essayer d'exporter des données d'une table Access vers Excel.
Pour le moment j'ai réussi à exporter dans la première ligne de ma feuille excel des numeros d'échantillons venant d'une table pollens et dans ma première colonne des noms de pollens venant aussi de ma table.
Maintenant ce que j'aimerais faire c'est pour chaque case de ma feuille aller récupérer la valeur du champ nombre dans ma table correspondant au pollen et au numero d'échantillon .
J'ai écrit ce code,
For i = 5 To n ' toutes les lignes de ma feuille en partant de la n° 5
For j = 2 To m ' toutes les colonnes de ma feuille en partant de la n°2
Mysql = "SELECT [nombre] FROM pollens WHERE ([numech]= '" & xl.Cells(1, j).Value & "' AND [taxon] = '" & xl.Cells(i, 1).Value & "');"
Set rst = CurrentDb.OpenRecordset(Mysql, dbOpenDynaset, dbReadOnly)
xl.Cells(j, i).Value = rst![nombre]
Next
Next
J'obtiens un message d'erreur comme quoi il n'existe pas d'enreigstrements correspondant.
Il est possible en effet qu'il n'y ai pas de champ correspondant a ce pollen et à ce numéro d'échantillon dans ma table pollens.
Mes questions sont :
- Mon code est-il juste ?
- Si oui comment dire au programme de continuer la boucle même si il n'y a pas d'enregistrements ?
cokinoumasterflash
Messages postés62Date d'inscriptionjeudi 16 juin 2005StatutMembreDernière intervention19 août 20057 30 juin 2005 à 11:11
J'ai réussi à me debuguer en partie:
La solution pour le mssage d'erreur :
If rst.EOF False And rst.BOF False Then
xl.Cells(j, i).Value = rst![nombre]
End If