Excel ?

.NET

2 svar · 362 visningar · startad av jonne

Medlem sedan jan. 20011 154 inlägg
Trådstart#1

Någon som har ett bra exemple/länk på hur man med läser in ett excelark i en datagrid ? (vb hellst)

Medlem sedan dec. 19998 577 inlägg
#2

Detta kanske kan vara något...
http://www.asp-grandrapids.net/Examples/Excel.aspx

Medlem sedan jan. 20011 154 inlägg
#3

Jo jag testade den lite innan. Kunde dock inte få det att fungera fullt ut. Det är lite skummt för den fungerar första gången man går in på sidan. Sen vill den inte vara med längre.

Här kommer lite.. ehm.. kod :)

<%@ Page Language="VB" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.ADO" %>

<script language="VB" runat="server">

Sub Page_Load(sender As Object, e As EventArgs)
	If Not Page.IsPostBack Then
		BindGrid()
	End If
end sub

Sub BindGrid()
	Dim myDataset As New DataSet
	
	'You can also use the Excel ODBC driver I believe - didn't try though
	Dim strConn As String
	strConn = "DSN=excel"
	'You must use the $ after the object you reference in the spreadsheet
	Dim myADODataSetCommand As New ADODataSetCommand("SELECT * FROM [Foo$]", strConn)
	myADODataSetCommand.TableMappings.Add("Table", "*")
	myADODataSetCommand.FillDataSet(myDataset)
	
	DataGrid1.DataSource = myDataset.Tables(0).DefaultView
	DataGrid1.DataBind()
End Sub
Sub cdsGrd_PageChanger(Source As Object, _
	E As DataGridPageChangedEventArgs)
	BindGrid()
End Sub
</script>

<p>

<form runat="server" method="post">
<asp:DataGrid id=DataGrid1 runat="server"
gridlines = "none"
AlternatingItemStyle-Backcolor = "#cccccc"
AllowPaging = "False"
OnPageIndexChanged = "cdsGrd_PageChanger"
/>
</form>
</p>

Det fungerar som sagt första gången men efter det kommer följande felmeddelande:

Exception Details: System.Data.ADO.ADOException: No error information available: E_FAIL(0x80004005).

Source Error: 

Line 21: 	Dim myADODataSetCommand As New ADODataSetCommand("SELECT * FROM [Foo$]", strConn)
Line 22: 	myADODataSetCommand.TableMappings.Add("Table", "*")
Line 23: 	myADODataSetCommand.FillDataSet(myDataset)
Line 24: 	
Line 25: 	DataGrid1.DataSource = myDataset.Tables(0).DefaultView
 

Source File: F:\aspx\egna\excel.aspx    Line: 23

Förslag på vad jag har jort fel ?
Slänger upp excelfilen här

251 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
119 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)