/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Hente data fra Excel
Fra : Ryan Kristensen


Dato : 01-03-03 16:34

Hej.
http://www.html.dk/artikler/00039/ er der beskrevet hvordan man henter
data fra et Excel dokument, men jeg kan ikke få det til at virke.
Jeg får følgende fejlmeddelelse:
Expected identifier

/admin/Cd.asp, line 21

For (rs.MoveFirst(); !rs.EOF; rs.MoveNext()) {


Her er hele koden

<%
'ADO forbindelse
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Excel Driver (*.xls)}; DBQ=" &
Server.MapPath("/admin/regnskab.xls;DefaultDir=") & Server.mapPath(".")
Conn.Mode = 0
Conn.Open DSN

'Få adgang til indholdet
strSQL = "Select * from start"
Set rs = Server.CreateObject("ADODB.Recordset")
rs = Conn.Execute(strSQL)

For (rs.MoveFirst(); !rs.EOF; rs.MoveNext()) {
Response.Write("<tr>");
For (i = 0; i < 5; i++) {

If (i == 0) {
Response.write("<td><strong>");
} Else {
Response.write("<td style=\"text-align: right\">");
}
Response.write(rs.Fields(i));
Response.write("<br>");
If (i == 0) {
Response.write("</strong>");
}

Response.write("</td>");
}
Response.Write("</tr>");
}

'luk forbindelse
rs.close()
Conn.close()

%>

Hvad er der galt?

Mvh.
Ryan



 
 
Jakob Andersen (02-03-2003)
Kommentar
Fra : Jakob Andersen


Dato : 02-03-03 00:29

"Ryan Kristensen" wrote
> På http://www.html.dk/artikler/00039/ er der beskrevet
> hvordan man henter data fra et Excel dokument, men
> jeg kan ikke få det til at virke.

Koden i artiklen er skrevet i JScript og du skriver i VBScript. Jeg har lagt
en VBScript version af kildekoden op til dig her:
<http://intellect.dk/deiwsasp/excel.asp>

--
Jakob Andersen



Ryan Kristensen (02-03-2003)
Kommentar
Fra : Ryan Kristensen


Dato : 02-03-03 02:51

Koden i artiklen er skrevet i JScript og du skriver i VBScript. Jeg har lagt
> en VBScript version af kildekoden op til dig her:
> <http://intellect.dk/deiwsasp/excel.asp>

- Tak skal du have. Jeg har dog lige et par spørgsmål.
Hvorfor viser den ikke indholdet af alle celler? Hele den øverste række er
ikke med, i kolonne 2 viser den ikke indholdet af b2 og b11 og i kolonne 3
viser den kun indholdet af c11
Excel dokumentet ligger her http://www.composmentis.dk/admin/regnskab.xls
og det jeg får frem kan ses her http://www.composmentis.dk/admin/Cd.asp

Derudover ville jeg også gerne vide hvad det kan være, at Option Explicit
ikke virker på min server, hvis det står der får jeg følgende
fejlmeddelelse:
Expected statement

/admin/Cd.asp, line 10

Option Explicit
--
Ryan





Jakob Andersen (02-03-2003)
Kommentar
Fra : Jakob Andersen


Dato : 02-03-03 11:14

"Ryan Kristensen" wrote
> Hvorfor viser den ikke indholdet af alle celler?
> Hele den øverste række er ikke med, i kolonne 2
> viser den ikke indholdet af b2 og b11 og i kolonne 3
> viser den kun indholdet af c11

Er du sikker på at disse celler er en del af det dataområde du benytter?
(Det er lidt svært at se hvis jeg ikke kan se din kildekode)

> Derudover ville jeg også gerne vide hvad det kan
> være, at Option Explicit ikke virker på min server,
> hvis det står der får jeg følgende

Option Explicit skal stå helt i toppen af siden.

--
Jakob Andersen



Ryan Kristensen (02-03-2003)
Kommentar
Fra : Ryan Kristensen


Dato : 02-03-03 22:27

Er du sikker på at disse celler er en del af det dataområde du benytter?
(Det er lidt svært at se hvis jeg ikke kan se din kildekode)

- Det burde være en del af dataområdet, jeg har markeret fra A1 til C17 og
givet boksen navnet regnskab2

her er koden:
<%
'Option Explicit

Dim objConn, objRS, i
Set objConn = Server.CreateObject( "ADODB.Connection" )
objConn.ConnectionString = "Driver={Microsoft Excel Driver (*.xls)};DBQ=" &
Server.MapPath( "regnskab.xls" )
objConn.Open

Set objRS = objConn.Execute( "SELECT * FROM regnskab2" )

Response.Write( "<table>" & vbcrlf )
Do while Not objRS.EOF
Response.Write( vbTab & "<tr>" & vbcrlf )
For i = 0 To objRS.Fields.Count - 1
Response.Write( vbTab & vbTab & "<td>" )
If i = 0 Then
Response.Write("<strong>" & objRS(i) & "</strong>" )
ElseIf i = 1 Then
Response.Write(objRS(i))
ElseIf i = 2 Then
Response.Write("<i>" & objRS(i) & "</i>")
End If
Response.Write( "</td>" & vbcrlf )
Next
Response.Write( vbTab & "</tr>" & vbcrlf )
objRS.Movenext
Loop
Response.Write( "</table>" & vbcrlf )

Set objRS = Nothing
objConn.Close
Set objConn = Nothing
%>


--
Ryan



Jakob Andersen (02-03-2003)
Kommentar
Fra : Jakob Andersen


Dato : 02-03-03 23:39

"Ryan Kristensen" wrote
> - Det burde være en del af dataområdet,
> jeg har markeret fra A1 til C17 og
> givet boksen navnet regnskab2

Okay, det kan være at ODBC driveren ikke kan klare de blandede datatyper i
samme kolonner. Jeg må indrømme at jeg aldrig har brugt Excel som
dataopbevaring til noget videre seriøst så jeg skal ikke kunne sige det.

--
Jakob Andersen



Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408946
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste