Envoi d'une donnée access dans une cellule excel

elpaulo Messages postés 135 Date d'inscription vendredi 17 novembre 2000 Statut Membre Dernière intervention 12 août 2008 - 22 juin 2005 à 13:25
elpaulo Messages postés 135 Date d'inscription vendredi 17 novembre 2000 Statut Membre Dernière intervention 12 août 2008 - 22 juin 2005 à 16:24
Bonjour a tous!

Je me demandais comme ca si on peut (et on doit pouvoir!) envoyer une donnée d'une table access dans une cellule bien précise.
J'ai fait quelques essais, mais la seule chose qui a marché jusqu'à présent, c'est l'ouverture d'un classeur excel bien spécifique. En voila le code :

Dim ExApp As Excel.Application

Set ExApp = CreateObject("Excel.Application")
ExApp.Visible = True
Set ExDoc = ExApp.Workbooks.Add("F:\truite\saumon\Statistiques.xls")

Ma donnée se trouve dans une variable appelée "rotule" et je voudrais envoyer son contenu en A1. Savez-vous comment faire?

Merci d'avance et encore pardon pour hier !

1 réponse

elpaulo Messages postés 135 Date d'inscription vendredi 17 novembre 2000 Statut Membre Dernière intervention 12 août 2008
22 juin 2005 à 16:24
bon, ca c'est bon j'ai trouvé!


Alors deuxième question qui vous interressera peut-être un peu plus :
Je voudrais savoir comment se servir des zones que l'on peut définir sous excel depuis access. Je m'explique:
J'ai maintenant exporté mes données dans une feuille excel. Dans la colonne A, j'ai mis des libellés du type A1 "Frites", A2 "Moules" ...Dans la colonne B, j'ai les valeurs correspondantes : B1 "50", B2 "25" ...

Je souhaite définir une zone qui prendra toutes mes données et me servir de celle ci comme source de données pour un graphique. Alors c'est simple, on sélectionne la zone, on la nomme, et on définit cette zone comme source pour le graph... Mais non!

En effet le nombre d'ingrédients peut changer, ce qui veut dire que l'on pourra passer de 3 à 5 lignes, et il faudra donc redéfinir la zone a chaque fois... Je désire donc automatiser ceci pendant l'appel et l'envoi de données dans le classeur excel.

Regardons ensemble mon code :

Dim ExApp As Excel.Application
Dim i As Integer

Set ExApp = CreateObject("Excel.Application")
ExApp.Visible = True
Set ExDoc1 = ExApp.Workbooks.Add("F:\truite\Statistiques.xls")

RstReqApt.MoveFirst
i = 1



Do While Not RstReqApt.EOF

With ExApp1.Sheets("statsingredients")
.Cells(i, 1).Value = RstReqApt("ingredient")
.Cells(i, 2).Value = RstReqApt("Nombre")
End With

i = i + 1
RstReqApt.MoveNext

Loop

J'ai donc pensé qu'il pourrait etre interressant de récupérer la valeur de i, car elle donne le nombre exact de lignes. J'ai créé manuellement une zone appelée "Selection" dans excel qui prend (A1:B6), donc 6 ingrédients. C'est donc la zone qui est prise en compte pour la création du graphique.

Voila, il faudrait pouvoir modifier les dimensions de cette zone en fonction de la valeur de i. Comment faire?

Merci d'avance.
0
Rejoignez-nous