bonjour,
j'ai un problème pour exporter un datagrid. en effet rien ne s'exporte dans excel.
voici le code pour le datagrid
<aspataGrid ID="magrille" runat="server" CellPadding="4" ForeColor="#333333" GridLines="None" AutoGenerateColumns=false>
<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<EditItemStyle BackColor="#999999" />
<SelectedItemStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<AlternatingItemStyle BackColor="White" ForeColor="#284775" />
<ItemStyle BackColor="#F7F6F3" ForeColor="#333333" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<Columns>
<asp:ButtonColumn CommandName="Select" Text="Sélectionner"></asp:ButtonColumn>
</Columns>
</aspataGrid>
ainsi que celui qui devrez me permettre de l'exporter.
Protected Sub BtImprimer_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BtImprimer.Click
Dim r As Integer
Dim c As Integer
Dim sLine As String
Response.Clear()
Response.AddHeader("content-disposition", "attachment; filename=Mod_Tools_Downloads.xls")
Response.Charset = ""
Response.Cache.SetCacheability(HttpCacheability.NoCache)
Response.ContentType = "application/vnd.ms-excel"
Response.ContentEncoding = System.Text.Encoding.Default
TextBox2.Text = magrille.Columns.Count
TextBox3.Text = magrille.Items.Count
sLine = ""
For c = 0 To magrille.Columns.Count - 1
sLine += magrille.Columns(c).HeaderText & Chr(9)
Next
Response.Write(sLine)
Response.Write(vbCrLf)
For r = 0 To magrille.Items.Count - 1
sLine = ""
For c = 0 To magrille.Columns.Count - 1
sLine += magrille.Items(r).Cells(c).Text & Chr(9)
Next
TextBox1.Text = sLine
Response.Write(sLine)
Response.Write(vbCrLf)
Next
Response.End()
End Sub
ce datagrid est alimenter par une base de données access. Voici le code qui alimente mon datagrid.
Sub alim()
Dim connectionAccess As System.Data.OleDb.OleDbConnection
connectionAccess = New System.Data.OleDb.OleDbConnection
'connectionAccess.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = C:\Documents and Settings\administrateur.GFI-AEROSPACE\Mes documents\Visual Studio 2005\WebSites\polyvalence1\polyvalence.mdb"
connectionAccess.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = G:\Intranet_BAI\polyvalence1\polyvalence.mdb"
connectionAccess.Open()
Dim DataRead As System.Data.OleDb.OleDbDataReader
Dim commandeAccess As System.Data.OleDb.OleDbCommand
Dim requeteAccess As String
requeteAccess = "SELECT * FROM PERSONNELS ORDER BY MATRICULE"
commandeAccess = New System.Data.OleDb.OleDbCommand(requeteAccess, connectionAccess)
DataRead = commandeAccess.ExecuteReader()
magrille.DataSource = DataRead
magrille.DataBind()
DataRead.Close()
connectionAccess.Close()
End Sub
merci de votre aide.
Partager