Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

presentation de résultats

4 réponses
Avatar
le Nordiste
Bonjour,

J'ai quelque srequ=EAtes et tables r=E9sultant de requ=EAtes.

j'aimerais pr=E9senter le r=E9sultat de certaines requ=EAtes ne donnant
qu'un seul enregistrement et moins de 5 champs chacune dans un seul
document.

Que me conseiller vous et comment faire.

merci pour votre aide

4 réponses

Avatar
Blaise Cacramp
Selon : Bonjour ou bonsoir

D'utiliser du VBA automation pour faire une sortie en Excel (relativement
facile) ou en Word (si vraiment nécessaire)

Voici un exemple de code de base. Il faut bien entendu adapter sSql et
l'écriture des champs Rst. N'hésitez pas à utiliser la touche magique "F1"
sur les mots-clé

Cdt, Blaise
---- ---- ----
«
Sub Demo_Xl_Rst()
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Dim L As Long
Dim C As Integer

Dim sSql As String
Dim Rst As New ADODB.Recordset

sSql = "SELECT Tbl_Poste.CP_Code, Tbl_Poste.CP_Localite" _
& " FROM Tbl_Poste;"
Rst.Open sSql, CurrentProject.Connection, adOpenStatic
If Rst.EOF Then
Beep
MsgBox "pas d'enregistrements"
Exit Sub 'pas d'enregistrements
Else
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Add 'dans le cas d'un classeur
vierge
' ou Set xlBook = xlApp.Workbooks.Open("x:cheminnom.xlt") 'dans le
cas d'un modèle _
recommandé quand la mise en forme est prévisible
Set xlSheet = xlBook.Worksheets("Feuil1") 'ou son vrai nom dans
un modèle (conseillé)
xlApp.Calculation = xlCalculationManual 'Recommandé si vous
écrivez des formules dans les cellules _
Accélère le traitement
spectaculairement s'il y en a beaucoup
xlApp.Visible = False 'ou True (False plus rapide dans le cas
d'un grand tableau) _
Laisser à True lors des tests
DoCmd.Hourglass True 'mettre en remarque durant la phase de tests

With xlSheet
' Ecrire quelques valeurs
For L = 1 To Rst.RecordCount
For C = 1 To 2
.Cells(L, C) = Rst(C - 1)
Next C
Rst.MoveNext
Next L
End With
Rst.Close
DoCmd.Hourglass False
xlApp.Visible = True '(s'il avait été à false en début de
procédure)
xlApp.Calculation = xlCalculationAutomatic 'remettre le calcul
automatique en route
' Libérer les variables objet
Set Rst = Nothing
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing
End If
End Sub

»


"le Nordiste" a écrit dans le message de news:

Bonjour,

J'ai quelque srequêtes et tables résultant de requêtes.

j'aimerais présenter le résultat de certaines requêtes ne donnant
qu'un seul enregistrement et moins de 5 champs chacune dans un seul
document.

Que me conseiller vous et comment faire.

merci pour votre aide
Avatar
le Nordiste
Bonjour et merci Blaise,

Je teste ton code dans la journée et te tient au courant.
L'idée de passer directement sous XL me plait bien.
J'ai XL2007, j'espére que ça va aller.

À bientot
Avatar
le Nordiste
MERCI ! Blaise,

Tout à fait ce que je recherchais.
Bien sur il me faut adapter mais c'est trés proche de mon besoin.

J'apprécie les diverses versions -classeur vierge ou avec modéle-


Bonnes fêtes de Noël et de fin d'année
Avatar
Blaise Cacramp
Merci aussi Le Nordiste (ch'ti ?) pour ton retour.
Je dois dire que je n'utilise plus que cela pour les rapports. Et cela
arrange les managers qui sont plus à l'aise avec Excel. Il peuvent ainsi
colorer à leur guise, prendre des nombres, faire d'autres calculs ...
Au début, pour trouver le code Excel facilement, j'enregistrais des macros
que je copiais / collais / *adaptais car il faut quand même comprendre*.
Après, la mémoire peut souvent suffire.

Autre chose : depuis lors, j'ai ajouté une autre ligne (22) dans l'exemple :

21 Rst.Close
22 .Range(xlSheet.Cells(1, 2), xlSheet.Cells(L,
2)).Font.Italic = True ' sans le xlSheet devant les .cells, l'erreur 1004
se déclenchera à la seconde éxécution.
23 End With


Joyeuses fêtes aussi, Blaise


"le Nordiste" a écrit dans le message de news:

MERCI ! Blaise,

Tout à fait ce que je recherchais.
Bien sur il me faut adapter mais c'est trés proche de mon besoin.

J'apprécie les diverses versions -classeur vierge ou avec modéle-


Bonnes fêtes de Noël et de fin d'année