Avatar billede kaptajnknas Nybegynder
21. december 2003 - 16:05 Der er 20 kommentarer og
2 løsninger

Punktum i et udtræk

Hvordan sætter man et punktum i et udtræk. lad os sige at der i tabellen står 185 , her vil jeg gerne ha sat et punktum, så der kommer til at stå 1.85 i udtrækket
Avatar billede tuctoh Nybegynder
21. december 2003 - 16:10 #1
divider med 100?

select mittal/100 from mintabel
Avatar billede trumf Nybegynder
21. december 2003 - 16:12 #2
string = left(string, 1) & "." & right(string, 2)
Avatar billede kaptajnknas Nybegynder
21. december 2003 - 23:58 #3
Det virker ikke helt som det skal
Når man divider med 100 sættes der godt nok et komma med 2 decimaler hvis der fek. står 185 i tabellen, skrives 1,85 men står der 190 skrives 1,9 og så mangler der jo et nul, hvordan kan det løses?
Avatar billede trumf Nybegynder
22. december 2003 - 00:08 #4
Så brug min løsning den er sikker :-)

...ellers vil formatNumber(mittal, 2) altid give 2 decimaler.
Avatar billede kaptajnknas Nybegynder
22. december 2003 - 00:13 #5
trumf >> hvor og hvordan den linie ind?

string = left(string, 1) & "." & right(string, 2)
Avatar billede trumf Nybegynder
22. december 2003 - 00:19 #6
mittal = left(hent("mittal"), 1) & "." & right(hent("mittal"), 2)
Avatar billede kaptajnknas Nybegynder
22. december 2003 - 00:33 #7
Hm, det som jeg brugte før
"&replace(rs("minetal"), "'", "''")/100&"

kan du ændre linien så det passer?
Avatar billede trumf Nybegynder
22. december 2003 - 00:38 #8
mittal = left(rs("minetal"), 1) & "." & right(rs("minetal"), 2)
Avatar billede kaptajnknas Nybegynder
22. december 2003 - 00:47 #9
Mange tak :-)
Avatar billede kaptajnknas Nybegynder
22. december 2003 - 00:53 #10
Jeg var lidt for hurtig.
Det virker altså ikke som det skal

hvis der står 4 i min tabel er udtrækket 4.4 ( skulle være 0.04 )
hvis der står 60 er udtrækket 6.60 ( skulle være 0.60 )
Avatar billede trumf Nybegynder
22. december 2003 - 01:10 #11
OK, hvad er reglerne for hvordan et tal skal se ud. Jeg kan ikke lige gennemskue hvad det skal bruges til.
Hvorfor gemmer du ikke bare tal som de skal bruges ???
Avatar billede kaptajnknas Nybegynder
22. december 2003 - 01:15 #12
Er det muligt at update en tabel med eks. 0.01 ?
Tallene skal illustrere kroner og øre
Avatar billede kaptajnknas Nybegynder
22. december 2003 - 01:16 #13
Derfor hvis 4 så skal udtrækket være 0.04 DKK
Avatar billede trumf Nybegynder
22. december 2003 - 01:16 #14
Prøver lige...
mittal = rs("minetal")
If Len(mittal) < 3 Then
  If Len(mittal) = 2 Then
    mittal = "0." & mittal
  Else
    mittal = "0.0" & mittal
  End If
Else
  mittal = left(mittal, 1) & "." & right(mittal, 2)
End If

Dette vil virke med tal fra 0 til 999

Er der større tal i databasen ???
Avatar billede kaptajnknas Nybegynder
22. december 2003 - 01:18 #15
ja 100000
Avatar billede trumf Nybegynder
22. december 2003 - 01:21 #16
OK så vil denne virke i stedet.

mittal = rs("minetal")
If Len(mittal) < 3 Then
  If Len(mittal) = 2 Then
    mittal = "0." & mittal
  Else
    mittal = "0.0" & mittal
  End If
Else
  mittal = left(mittal, Len(mittal)-2) & "." & right(mittal, 2)
End If
Avatar billede trumf Nybegynder
22. december 2003 - 01:27 #17
Det er nok flottest kode med en funktion så lav det sådan

Placer denne funktion i starten af din side

Function lavTal(byval tal)
If Len(tal) < 3 Then
  If Len(tal) = 2 Then
    lavTal = "0." & mittal
  Else
    lavTal = "0.0" & tal
  End If
Else
  lavTal = left(tal, Len(tal)-2) & "." & right(tal, 2)
End If
End Function

Og kald så funktionen med
lavTal(rs("minetal"))
Avatar billede kaptajnknas Nybegynder
22. december 2003 - 14:34 #18
Jeg har prøvet de sidste foreslag, men der sker intet, helt blank, ingen udtræk
Avatar billede trumf Nybegynder
22. december 2003 - 14:59 #19
Skriv lige al din kode...
Avatar billede kaptajnknas Nybegynder
22. december 2003 - 15:05 #20
<%
    Set Conn = Server.CreateObject("ADODB.Connection")
                      strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("regnskaber.mdb")
    Conn.Open AccessDataBase
Set rs = Conn.Execute("SELECT saldo FROM regnskab")
if not rs.EOF then


mittal = rs("saldo")
If Len(mittal) < 3 Then
  If Len(mittal) = 2 Then
    mittal = "0." & mittal
  Else
    mittal = "0.0" & mittal
  End If
Else
  mittal = left(mittal, Len(mittal)-2) & "." & right(mittal, 2)
End If

    end if
    rs.Close
    Conn.Close
    Set Conn = Nothing
    Set rs = Nothing
%>
Avatar billede trumf Nybegynder
22. december 2003 - 15:17 #21
Prøv dette her:

<%
Function lavTal(byval tal)
If Len(tal) < 3 Then
  If Len(tal) = 2 Then
    lavTal = "0." & tal
  Else
    lavTal = "0.0" & tal
  End If
Else
  lavTal = left(tal, Len(tal)-2) & "." & right(tal, 2)
End If
End Function

    Set Conn = Server.CreateObject("ADODB.Connection")
                      strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("regnskaber.mdb")
    Conn.Open AccessDataBase
Set rs = Conn.Execute("SELECT saldo FROM regnskab")
if not rs.EOF then
  Do while Not rs.EOF
    response.write(lavTal(rs("saldo")) & "<BR>")
    rs.MoveNext
  Loop
end if
    rs.Close
    Set rs = Nothing
    Conn.Close
    Set Conn = Nothing
%>
Avatar billede kaptajnknas Nybegynder
22. december 2003 - 21:21 #22
Tak for hjælpen, det virker perfekt nu :-)
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