begin process at 2010 02 10 17:28:43
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Base de données

 > 

ADO & DAO

 > 

exportation datagrid vers excel


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

exportation datagrid vers excel

lundi 8 octobre 2007 à 21:09:58 | exportation datagrid vers excel

solid_sneak06

Membre Club
Bonjour,
j'ai du mal à exporter mes données datagrid vers excel, voici un code que j'ai trouvé sur un site et que normalement doit marcher mais il marche pas chez moi
Dim i, j, k, l AsInteger
OnErrorGoTo errxcel
Dim xlo AsObject
Set xlo = CreateObject("Excel.Application")
DoEvents
xlo.Visible = True
xlo.workbooks.Add
i = rsProv1.RecordCount
j = DataGrid1.Columns.Count
For k = 0To j - 1
       xlo.workbooks(1).sheets(1).Cells(l + 1, k + 1) = DataGrid1.Columns(k).Caption
Next k
l = 0
rsProv1.MoveFirst
DoWhileNot rsProv1.EOF
For k = 0To j - 1
       DataGrid1.Col = k
       xlo.workbooks(1).sheets(1).Cells(l + 2, k + 1) = DataGrid1.Text
Next k
rsProv1.MoveNext
l = l + 1
Loop
ExitSub
errxcel:
MsgBox "Excel not found"
 
 je sais pas pourquoi ca marche pas, il ouvre justel'excel pas plus et bien sur j'ai le message d'erreur "excel not found" . pourquoi? est ce qu'il a quelque chose à modifier au niveau des préférences ou quoi exactement.
Help les amis
lundi 8 octobre 2007 à 22:47:21 | Re : exportation datagrid vers excel

GEDDi


Hello,

Plus simplement encore : http://webman.developpez.com/articles/aspnet/aspnet2excel/
C'est ce que j'utilise et ça marche partout ça :)

Gérôme GUILLEMIN
Auteur du langage FBSL
lundi 8 octobre 2007 à 23:01:39 | Re : exportation datagrid vers excel

GEDDi

Re,
PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

' On efface les éventuelles données déjà dans la mémoire tampon
Response.Clear()

' On place tout ce qui est destiné au client dans la mémoire tampon
Response.Buffer = True

' On définit le type d'informations renvoyée, ici des données au format Excel
Response.ContentType = "application/vnd.ms-excel"

' On efface le jeu de caractères actuellement défini
Response.Charset = ""

' On instancie deux objets qui vont nous permettre de récupérer les données du DataGrid :
' le StringWriter et l'HtmlTextWriter
Dim monStringWriter As StringWriter = New StringWriter
Dim monHtmlTextWriter As HtmlTextWriter = New HtmlTextWriter(monStringWriter)

' On extrait le contenu du DataGrid dans l'HtmlTextWriter
monDG.RenderControl(monHtmlTextWriter)

' On copie le contenu extrait dans la mémoire tampon
Response.Write(monStringWriter.ToString())

' On ferme "le flux" de données et envoie les données au client
Response.End()

EndSub

Gérôme GUILLEMIN
Auteur du langage FBSL
lundi 8 octobre 2007 à 23:04:12 | Re : exportation datagrid vers excel

solid_sneak06

Membre Club
Merci pour tes rep mais je suis sous VB6
lundi 8 octobre 2007 à 23:17:39 | Re : exportation datagrid vers excel

GEDDi


Bah, j'ai lu 'datagrid', j'ai pensé à .NET tout simplement, vu que VB6 n'était nullement indiqué !
Donc ton truc c'est de générer coté serveur un datagrid vers un excel ?
Si oui, alors tu fais du code dans un ActiveX que tu déploies ensuite dans IIS, apres via une page ASP tu peux invoquer l'appel de conversion Datagrid2Excel et rebalancer coté client les datas sous la forme d'une response HTML de type "application/vnd.ms-excel"

Gérôme GUILLEMIN
Auteur du langage FBSL
lundi 8 octobre 2007 à 23:54:03 | Re : exportation datagrid vers excel

solid_sneak06

Membre Club

Je m'excuse c'est ma faute. Merci pour ta reponse mais c'est trop compliqué pour moi ca; le code que j'ai mis au debut est simple et doit marcher mais je sais pas pourquoi il fonctionne pas.

merci quand meme.

mardi 4 mars 2008 à 13:20:09 | Re : exportation datagrid vers excel

sadnak

j'ai utilisé ton code en enlevant tout ce qui me derangeait et ça a marché.

partie a enlever (gestion d'erreur)

OnError...

et
la fin apres le Loop.
ExitSub
errxcel:
MsgBox
"Excel not found"


Sadnak

mardi 11 mars 2008 à 21:13:34 | Re : exportation datagrid vers excel

kat40

Bonjour ,

Je viens d'utliser le code :

Private Sub cmdImprimer_Click()
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim l As Integer
Dim xlo As Object
Set xlo = CreateObject("Excel.Application")

DoEvents
xlo.Visible = True
xlo.workbooks.Add
i = rsProv1.RecordCount
j = DataGrid1.Columns.Count
For k = 0 To j - 1
       xlo.workbooks(1).sheets(1).Cells(l + 1, k + 1) = DataGrid1.Columns(k).Caption
Next k
l = 0
rsProv1.MoveFirst
Do While Not rsProv1.EOF
For k = 0 To j - 1
       DataGrid1.Col = k
       xlo.workbooks(1).sheets(1).Cells(l + 2, k + 1) = DataGrid1.Text
Next k
rsProv1.MoveNext
l = l + 1
Loop

End Sub

Et j'ai enlever la gestion des erreurs mon problème, je suis débutante, ça bloque à la ligne:
i = rsProv1.RecordCount

Le message d'erreur est: Run-time error 424 object required

Que dois-je faire?

Merci de votre aide.
Kat40

jeudi 13 mars 2008 à 20:09:53 | Re : exportation datagrid vers excel

kat40

J'ai trouvé rs....vraiment débutante,



Mon problème, ma boucle fonctionne pas, seulement le premiere ligne de données, ma ligne d'entête est ok s'incrit et à l'infinit??

Private Sub cmdImprimer_Click()
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim l As Integer
Dim xlo As Object


Dim cnx As New ADODB.Connection
Dim rst As New ADODB.Recordset
cnx.ConnectionString = "Provider=SQLOLEDB;Data Source=TEST;Initial Catalog=CaisseDCN;User ID=ssssss;Password=test;"
cnx.Open
 
Set xlo = CreateObject("Excel.Application")
rst.Open "SELECT * FROM ", cnx
DoEvents
xlo.Visible = True
xlo.workbooks.Add
i = rst.RecordCount
j = DataGrid1.Columns.Count
For k = 0 To j - 1
       xlo.workbooks(1).sheets(1).Cells(l + 1, k + 1) = DataGrid1.Columns(k).Caption
Next k
l = 0
rst.MoveFirst
Do While Not rst.EOF
For k = 0 To j - 1
       DataGrid1.Col = k
       xlo.workbooks(1).sheets(1).Cells(l + 2, k + 1) = DataGrid1.Text
Next k
rst.MoveNext
l = l + 1
Loop

Kat40

lundi 25 mai 2009 à 02:10:17 | Re : exportation datagrid vers excel

dodofolie

Salut tt le monde bein voila mon code pour le meme sujet
je veux exporter des données a partir d'un datagridview en excel 
g utilisé ce code et la feuille excel s'affiche
mai les données ne s'affichent pas
l'ereur qui apparait du coté du vs2008 est comme suit l'index est hors limites sur cette ligne :

xl.cells(l + 1, j + 1) = DataGridView1.Rows(l).Cells(c).Value


Bein voila mon code en general Svp aidezzz mwa



Private

Sub Button1_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim c, j As Integer

Dim xl As New Object

xl = CreateObject(

"Excel.application" )

 

xl.visible =

True

xl.workbooks.Add()

For c = 0 To DataGridView1.Columns.Count - 1

xl.cells(c + 1, 1) = DataGridView1.Columns(c).name

Next

For l As Integer = 0 To DataGridView1.Rows.Count - 1

For c = 0 To DataGridView1.Rows.Count - 1

xl.cells(l + 1, j + 1) = DataGridView1.Rows(l).Cells(c).Value

Next c

Next l

End Sub

1 2

Cette discussion est classée dans : excel, datagrid, workbooks, datagrid1, xlo


Répondre à ce message

Sujets en rapport avec ce message

Exportation d'un DataGrid pour Excel [ par Spard ] Bonjour a tous.Euh.. voila mon problemeJ'ai un resultat de requete SQL que je recupere dans un Datagrid ( 3 colonnes ). Je souhaite utiliser les éléme [EXCEL] mémoire insuffisante [ par boris3950 ] Bonjour,ayant réussi à importer les modules créés sousExcel 2000 dans mon classeur 97,j'ai de nouveau le message "mémoire insuffisante" à l'exec d'une [EXCEL] mémoire insuffisante [ par boris3950 ] Bonjour,j'ai réellement besoin d'aide concernant mon message "mémoire insuffisante". Il apparaît à l'exécution d'une macro sur l'instruction "Workbook Export Datagrid vers excel [ par Florian29 ] J'ai rempli un datagrid avec une requete sql. Je voudrai que lorsque l'on appuies sur un bouton, excel s'ouvre avec sur une feuille les données présen CREER UN FICHIER EXCEL AVEC LES DONNEES D'UNE DATAGRID [ par chup ] La datagrid est constitué a partir d'une requête qui a des champs différents àchaque fois et je voudrais a partir de ce datagrid créer une feuille exc datagrid, insertion [ par vish ] salut, j'essaye depuis des jours d'afficher le resultat de ma requete dans mon datagrid voici mon code:rivate Sub Form_Load()Dim SQL As StringDim rs A DataGrid colorisé? [ par Olivier ] J'ai un datagrid sur lequel je voudrais attribuer unecouleur différente à chaque ligne.Est-ce possible ou faut-il, par exemple, recopier le contenude Datagrid sous VB NET [ par Mondou ] J'essaie de valider la saisie de texte dans un datagrid, mais je ne trouve pas, y-a-til quelqu'un qui pourrait m'envoyer une exemple SVP (très différe PB avec LECTURE de fichier EXCEL!!!!!!! [ par cissou06 ] Salut!Mon pb est tou bete: j'ai besoin de lire des donnees dans un fichier excel. J'ai donc ecris:WorkBooks.Open (xlsPath & xlsName)contenu = Cells(i, excel vers word [ par jacques_freix ] jackBonsoir.Est ce qu'il est possible de copier une feuille excel vers word en VB? j'ai essayé avec le code suivant :'copier coller d'un document xlsS


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,593 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales