Accueil > Forum > > > > créer un reporting excel à partir d'un recordset ADO
créer un reporting excel à partir d'un recordset ADO
mercredi 27 août 2008 à 13:33:39 |
créer un reporting excel à partir d'un recordset ADO

RENU974
|
bonjour, je ne sais pas comment formaliser ce projet que je vous décrit ci dessous: je souhaite réaliser un tableau excel qui récapitule le résultat d'un recordset d'une base access: 1/le nombre d'enregistrement étant supérieur à 1 million de lignes je ne peux utiliser une fonction copy to excel, il me faut trouver un autre moyen 2/ donc j'utilise un recorset obtenu depuis ma base de donnée access.ceci n'est pas un problème. ce que je ne sais pas faire c'est organiser mon recordset en disant dans VB excel: lorsque je parcours le recordset: si le champs TOTO du recordset = 0 alors je met le nombre de ligne correspondantes dans la cellule A1. je sais faire des boucles sur excel mais faire une boucle sur un recordset eh bien je bloque. si des personnes arrivent à me trouver un exemple d'application de reporting ou on transfere les données d'un recordset sur une feuille excel en disposant les champs comme je le souhaite je vous remercie d'avance.
|
|
mercredi 27 août 2008 à 13:49:59 |
Re : créer un reporting excel à partir d'un recordset ADO

youpiyoyo
|
SAlut,
tu as essayer DoCmd.TransferSpreadsheet... je suis pas sur qu'il supporte 1M de lignes sachant que excel ne peux en contenir que 65536. sinon pour boucler dans un recordset tu peux faire: With rst .MoveFirst Do Until .EOF loop end with rst etant ton recordset. tu as d'autres moyens de faire mais c'est une solution, tu peux faire un while ou un for combiné également avec 65536, a toi de voir et d'adapter. j'ai pas trop compris cette question: "lorsque je parcours le recordset: si le champs TOTO du recordset = 0 alors je met le nombre de ligne correspondantes dans la cellule A1."
de ce que je comprends: tu veux mettre le nombre d'enreigstrement null ou vide dans ta cellule A1 d'excel, c'est ca? Si c'est le cas pour tu ne fais une requete sql avec count et comme critère IS NULL or "". et tu l'execute avec executenonquery (si tu codes en vb ou c#.net).
Sinon pour ton reporting de access tu peux utilser crystal report. @+ youpi :)
|
|
mercredi 27 août 2008 à 14:52:42 |
Re : créer un reporting excel à partir d'un recordset ADO

RENU974
|
bonjour, merci pour ta réponse.
compte tenu du nombre d'enregistrement le transfert spreadsheet ne marchera pas. c'est pour cela que je passe par access, car seul access peut supporter un grand nombre de lignes.
ensuite tu n'a pas compris car j'ai mal expliqué:
si le champs TOTO du recordset est égal à une valeur cad 0 ou 1 par exemple. alors je met dans la cellule A1 le nombre d'enregistrement pour les quelle la condition sur ce chazmps est remplie.
en simple: j'ai combien d'enregistrements qui correspondent au champs TOTO=0
|
|
mercredi 27 août 2008 à 15:20:57 |
Re : créer un reporting excel à partir d'un recordset ADO

youpiyoyo
|
Réponse acceptée !
tu en bosses en vb.net non? pourquoi tu utilises ado? plutot que d'utiliser des recordset utilises des dataset ce qui est plus complet sur .net.
Sinon ma réponse est également bonne pour ton TOTO=0 ou 1. tu as plusieurs possibilités, soit tu construis une requete sql avec un count dedans avec les crières 0 ou1 et tu utilises un reader, soit si tu utilises des bindingsources tu utilises filter, soit si tu utilises un dataset ou datatable tu utilises select("TOTO=0), sinon tu utilises des boucles. si tu restes en ado avec access voici un exemple: Dim sqlcmd as string ="SELECT Count([tatable].[TOTO]) AS [CountOfTOTO] FROM [tatable] HAVING (((Count([tatable].[TOTO]))=0))" rst = dbCC.OpenRecordset(sqlcmd, dbOpenSnapshot) dim Fcount as integer If rst.RecordCount <> 0 Fcount =rst.fields("CountOfTOTO") End If rst.close si en .net Dim connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=taDatabase.mdb;" Dim connection As New OleDb.OleDbConnection(connectionString) Dim sqlcmd as string ="SELECT Count([tatable].[TOTO]) AS [CountOfTOTO] FROM [tatable] HAVING (((Count([tatable].[TOTO]))=0))" Dim Createcmd As OleDb.OleDbCommand = New OleDb.OleDbCommand(sqlcmd , connection) dim myreader As OleDb.OleDbDataReader dim Fcount as int16 try myreader = Createcmd.ExecuteReader() While myreader.Read() count = myreader(0) End While connection.Close() catch ex As Exception MsgBox(ex.Message) end try
c'est un exemple tu as plein de façon de faire a toi de choisir la meilleur en fonction de ton projet. @+ youpi :)
|
|
jeudi 28 août 2008 à 07:50:44 |
Re : créer un reporting excel à partir d'un recordset ADO

RENU974
|
salut, vbnet je ne connais pas . merci pour ton exemple ado je vais passer comme ca. le rpoblème des boucles c'est qu'il faut que je crée une variable de comptage pour chaque critère et dans mon cas c'est assez lourd (environ 20 critères donc 20 variables) dans tous les cas tu m'as donné l'occasion de regarder de plus près VB.net. j'en profite pour poser une autre question:
je n'arrive pas à me connecter à une table oracle depuis VB :
en fait dans access , nous pouvons créer un lien vers une table, celle ci étant volumineuse, le lien est mieux que d'importer la table entière. dans access , cette liaison se manifeste par un rond vert-bleu.
n'arrivant pas à me connecter à ce lien , en fait je fais une requête création de table sur ce lien avec mes critères puis je me connecte en vb sur le résultat de cette requête pour sortir le reporting. connais tu le code VB pour se connecter directement à ce lien de table et créer un recordset directement ?
merci pour ton aide.
|
|
lundi 1 septembre 2008 à 15:25:57 |
Re : créer un reporting excel à partir d'un recordset ADO

youpiyoyo
|
tu es dans la section VB.NET et VB 2005c'est pour cela que je pensais que tu étais en .net. oracle je ne connais pas désolé, regarde dans le designer de connection de visual. pour ton histoire de lien, si ta table est volumineuse fait une requete sql en select (aide toi de access si tu as besoin) avec tes critères et importe le résultat dans une table de ton dataset. Si tu n'es pas en .net je pourrais difficilement t'expliquer en vb6 sachant que je n'est jamais codé avec ce language, uniquement vba autre que .net. sinon utilises la première méthode ado que je t'ai donné. @+ youpi :)
|
|
Cette discussion est classée dans : créer, recordset, partir, excel, reporting
Répondre à ce message
Sujets en rapport avec ce message
Créer un graphique Excel à partir de VB [ par Silvia ]
Je travaille actuellement en VB6, et voudrais transférer des données sous forme de graphique sur Excel ?
créer une liste imprimable à partir d'une sélection [ par baz36 ]
Bonjour, je débute dans ce domaine et avant de m'investir, je souhaiterais savoir si mon problème est réalisable.Les données du pb :j'ai un catalogue
créer un graphique sur Excel à partir de VB6 [ par DD05 ]
Bonjour,Depuis VB6, je copie deux colonnes de chiffres sur Excel.La première colonne reprend les abscisses et la deuxième les ordonnées.Ensuite je tap
Créer une macro à partir d'une macro [ par SupraDolph ]
Bonjour, Je génére à partir d'une macro excel un autre document excel. Seulement dans ce dernier, le zoom des graphiques et incorrecte ce qui ne les
[Déplacé .Net --> VBA] Créer L'envoi d'un mail à partir d'excel [ par ouloul77 ]
Bonjour, Voilà, pour commencer, en tant que petit nouveau, merci pour votre acceuil. Et en tant que débutant merci pour votre aide!! Je voudrai, à p
créer excécutable à partir de macro [ par frippons ]
Bonjour à tousJe rencontre actuellement quelques soucis.J'ai effectué un ensemble de macro sous excel afin de faire la maquette d'un programme. Je sou
[Déplacé .Net --> VBA] Créer une table à partir d'une plage excel [ par lebcel ]
Bonjour, J'aimerais connaitre le code VBA pour créer une table à partir d'une plage de données Excel: - J'ai un tableau Excel - J'aimerais créer un
Créer un graphique à partir d'un tableau excel [ par Mickdu ]
Bonjour Je cherche à créer un graphique sous VB6 à partir d'un fichier excel. un graphique avec courbe superposées. A défaut je voudrais savoir comm
Créer une table à partir de paramètres dispo dans fichier Excel [ par asengs ]
Bonjour, je voulais savoir s'il était possible de créer une table Access à partir d'un fichier Excel. Pour être plus précis mon fichier comporte plu
récupérer chaque jour des donées dans un nouveau fichier Excel [ par Tang2006 ]
Bonjour, Je calcule au jour le jour la valeur d'un bien, pour cela je doit créer chaque jour un fichier Excel nommé selon le shémat suivant : "nom, d
Livres en rapport
|
Derniers Blogs
ASYNC/AWAIT: COMPRENDRE COMMENT CA MARCHEASYNC/AWAIT: COMPRENDRE COMMENT CA MARCHE par fathi
Tout le monde est unanime pour dire que la programmation multi-thread et asynchrone est en train de devenir un sujet incontournable. Beaucoup de choses sont arrivées avec le framework 4 pour le code parallèle (TPL, PLinq,.) et bientôt, on va avoir l...
Cliquez pour lire la suite de l'article par fathi PAS D'INTELLITRACE SUR MON SITE WEB DANS IIS !PAS D'INTELLITRACE SUR MON SITE WEB DANS IIS ! par Etienne Margraff
J'ai récemment eu un problème pour obtenir l'intelliTrace sur un site web dans IIS. Il n'y avait pas de message d'erreur, rien dans le journal d'évènement Windows, et après 3 appels à une voyante, 2 visites chez un marabou, j'ai failli me résign...
Cliquez pour lire la suite de l'article par Etienne Margraff OFFICE 365 - SHAREPOINT ONLINE, QUELQUES LIMITATIONSOFFICE 365 - SHAREPOINT ONLINE, QUELQUES LIMITATIONS par junarnoalg
De nombreuses entreprises font le choix de SharePoint Online, service fourni au travers de l'offre de Microsoft Office 365. S'il est vrai que ce choix apporte un grand nombre d'avantages; rapidité de mise en œuvre, disponibilité, large couvertu...
Cliquez pour lire la suite de l'article par junarnoalg PRéSENTATION DES API REST DE WINDOWS AZURE : LISTER LES COMPTES DE STORAGEPRéSENTATION DES API REST DE WINDOWS AZURE : LISTER LES COMPTES DE STORAGE par richardc
http://www.c2idotnet.com/articles/presentation-des-api-rest-de-windows-azure-lister-les-comptes-de-storage
Désolé pour "toto", mais c2i existait avant blogs.developpeur.org et c'est mon site "officiel" ;-) ...
Cliquez pour lire la suite de l'article par richardc
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|