Avatar billede chrisrj Forsker
20. april 2005 - 09:26 Der er 12 kommentarer og
1 løsning

fra asp til excel - viser forkerte tal(uden komma)

Jeg har et underligt problem. Jeg har en rapport, jeg laver baseret på min db(virker fint), men hvis jeg gerne vel vise den som et excelark(response.ContentType = "application/vnd.ms-excel") bliver tallene lavet om!?

Eksempel uden excel:
0,75 6,5 5,75 4,5 7,75 0,75 6,25 6,5 5 5,75 2,25 5,25

Eksempel MED excel:
75 65 575 45 775 75 625    65 5 575 225 525

Som man kan se mangler kommaet i excelarket, men hvorfor?? Hvad er dog galt?
Avatar billede chrisrj Forsker
21. april 2005 - 08:35 #1
Er der virkelig ingen der kan svare på det???
Avatar billede moejensen Nybegynder
21. april 2005 - 22:49 #2
kan du prøve at vise koden hvor du sætter det ind?
Avatar billede chrisrj Forsker
21. april 2005 - 23:24 #3
Heh, jeg tror ikke du kan få ret meget ud af det, men værsgo:

<table border="1">
<% For reportnr=0 to UBound(arrReport,2)-1 %>

    <!-- Report header Begin -->
    <% xls_rowpointer = xls_rowpointer + 1 %>
    <tr>
        <td x:str><b><%= arrReport(rpt_title, reportnr) %></b></td>
        <td colspan="<%= UBound(arrReport(rpt_xtitles,reportnr)) + 2 %>"></td>
    </tr>
    <% xls_rowpointer = xls_rowpointer + 1 %>
    <tr>
        <td><%= arrReport(rpt_subtitle, reportnr) %></td>
        <td colspan="<%= UBound(arrReport(rpt_xtitles,reportnr)) + 2 %>"></td>
    </tr>
    <% xls_rowpointer = xls_rowpointer + 1 %>
    <tr>
        <td></td>
        <td><b>Total</b></td>
        <td></td>
        <% For iCount=0 to UBound(arrReport(rpt_xtitles,reportnr))-1 %>
        <td><%= arrReport(rpt_xtitles,reportnr)(iCount) %></td>
        <% Next %>
    </tr>
    <!-- Report header end -->
    <%
    xls_colpointer = 4  ' D
    curHeaderRowStartPos = xls_rowpointer + 1
   
    %>
    <% For iCount=0 to UBound(arrReport(rpt_ytitles,reportnr))-1
    xls_rowpointer = xls_rowpointer + 1
    %>
    <tr>
        <td><%= arrReport(rpt_ytitles,reportnr)(iCount) %></td>
        <td x:num x:fmla="<%= getXLS_RowSum( xls_rowpointer, xls_colpointer, UBound(arrReport(rpt_xtitles,reportnr))-1 ) %>"></td>
        <td></td>
        <% For iCount2=0 to UBound( arrReport(rpt_xvalues, reportnr),2)-1 %>
        <td x:num="<%= arrReport(rpt_xvalues,reportnr)(iCount,iCount2) %>"><%= arrReport(rpt_xvalues,reportnr)(iCount,iCount2) %></td>
        <% Next %>
       
    </tr>
    <%
    'response.write "*" & xls_rowpointer & "* **" & curHeaderRowStartPos & "**<br>"
    Next %>
    <% xls_rowpointer = xls_rowpointer + 1 %>
    <tr>
        <td colspan="<%= UBound(arrReport(rpt_xtitles,reportnr)) + 3 %>"></td>
    </tr>
    <% xls_rowpointer = xls_rowpointer + 1 %>
    <tr>
        <td><b>Total</b></td>
        <td x:num x:fmla="=SUM(B<%= curHeaderRowStartPos %>:B<%= xls_rowpointer-2 %>)"></td>
        <td></td>
        <% For iCount=0 to UBound(arrReport(rpt_xtitles,reportnr))-1 %>
            <td x:num x:fmla="<%= getXLS_ColSum( iCount+4, curHeaderRowStartPos, xls_rowpointer-2 ) %>"></td>
        <% Next %>
    </tr>
    <% xls_rowpointer = xls_rowpointer + 1 %>
    <tr>
        <td colspan="<%= UBound(arrReport(rpt_xtitles,reportnr)) + 3 %>" style="height:26.75pt"></td>
    </tr>

<% Next %>

</table>
Avatar billede moejensen Nybegynder
22. april 2005 - 08:05 #4
der er da ikke noget sted der hvor du skriver til et excel ark.

Det kan godt være det er mig der har misforstået dig. Er det nogle data du vil skrive ind i et excel ark eller vi ldu bare lave en tabel der ligner et excel ark.
Avatar billede chrisrj Forsker
22. april 2005 - 11:40 #5
Som jeg skrev i spg., står der øverst i filen:
response.ContentType = "application/vnd.ms-excel"
Avatar billede moejensen Nybegynder
22. april 2005 - 11:47 #6
har du et sted hvor det ligge ronline, så jeg kan se det?
Avatar billede chrisrj Forsker
22. april 2005 - 11:55 #7
Nej, desværre - jeg har kun kørende på arbejdet - på vores intranet
Avatar billede chrisrj Forsker
22. april 2005 - 12:02 #8
Hvis jeg udkommentere response.ContentType = "application/vnd.ms-excel", kommer det fint ud i et alm. table...
Avatar billede moejensen Nybegynder
22. april 2005 - 12:33 #9
så bliver dte nok lidt svært for mig at hjælpe. Jeg kunne forestille mig at det var noget med nogle definitioner af det excel ark du generere. Problemet med komma, tror jeg er fordi i USA bruges punktum som komma i forbindelse med tal. og alt efter definitionen af cellerne i arket, så vises 0 ikke. Jeg har ikke arbejdet så meget med excel på denne måde, så du ksla nok ud at finde et api som kan give dig en bedre beskrivese.

Hvad sker der hvis du skifter dine kommaer ud med punktum, kommer de så med?

Problemet kan også være at cellerne er defineret som heltal, når der så er komma, vi lden tro den skal afrunde tallet.
Avatar billede chrisrj Forsker
22. april 2005 - 12:37 #10
Hmmm...jeg har ikke mulighed for at afprøve det nu. Men jeg kan fortælle dig at en anden rapport lavet med samme kode, virker 100 %.

Ved du hvilke definitioner jeg kan bruge og hvordan de skal bruges?
Avatar billede moejensen Nybegynder
22. april 2005 - 12:46 #11
jeg har desværre ikke umiddelmart noget på det, men prøv at søg på google.

Men det er underligt at det virker et andet sted. tester du på den samme maskine? bruges der også komma i det andet eksempel?
Avatar billede chrisrj Forsker
22. april 2005 - 16:03 #12
"...tester du på den samme maskine? bruges der også komma i det andet eksempel?"

Ja og ja
Avatar billede chrisrj Forsker
25. april 2005 - 09:13 #13
Jeg kom liige til at tænke på noget nu hvor jeg er kommet på arbejdet....

Den version der virker, kører jo på vores server som kører med engelsk sprog, hvor min arbejdsstation kører med dansk...

Jeg har så lige prøvet at rette min til engelsk og så virker det naturligvis. :)

Pinligt....

Jeg takker for hjælpen, jeg havde nok ikke tænkt på det, hvis ikke du ahvde nævnt det. :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester