BrimbaMedlem sedan dec. 19995 875 inlägg Hej!
När jag använder mig utav
<%Session.LCID = 1053%>
Så får jag mina tal formaterade tex "3 400" istället för "3400". Det är visserligen bra, men när jag skall mata in det i en databas så får jag fel, eftersom databasen har formatet TAL, det fungerar ju om jag väljer format som Text men det vill jag inte. Alltså skulle jag behöva formatera om mitt tal till "3400" innan jag kör in det i databasen. Tacksam för hjälp.
Tack!
///Patrik
[Redigerat av Brimba den 24 maj 2000]
VideMedlem sedan dec. 19998 577 inlägg Vad händer om du kör en Cint() på talet?
------------------
)|(
(o o)
-oo0-(_)-0oo-----
webeye.nu *hem*
vide@4sale.se
BrimbaMedlem sedan dec. 19995 875 inlägg Japp, det fungerar inte :(
Jag behöver troligtvis formatera talet så alla siffror står i rad utan mellanslag.
Skall man kanske leta efter mellanslag och ta bort dem?
///Patrik
PatrikBMedlem sedan mars 20002 836 inlägg Hello,
har du provat med att använda dig av Replace funktionen?
ex: varTal = Replace(FormatTal," ","")
och skicka sedan in varTal i databasen.....ej testat, gjort direkt från huvudet här och nu...
/PatrikB
ZaphodMedlem sedan maj 2000107 inlägg Testat Trim(variabel)?
Vet inte om det tar bort mellanslag som är mella två siffror/bokstäver dock.
Kan vara värt ett försök dock.
------------------
/Magnus aka Zaphod
www.designmodule.com.bi
BrimbaMedlem sedan dec. 19995 875 inlägg Hej!
Jag testade både Trim och Replace (såsom du angav den) igår. Men man kanske kan ange ascii koderna eller något för space (255) och sedan då lägga in "". För den kanske inte gillar när man anger space som " ". Fast jag vet inte.
Några fler tips?
///Patrik
VideMedlem sedan dec. 19998 577 inlägg Då får man kanske göra det lite mer komplicerat då... testa detta:
<%
TAL = ditt_nummer
For i = 1 To Ubound(Len(TAL))
If IsNumeric(InStr(TAL,i,1))
var = var & InStr(TAL,i,1)
End If
Next
TAL = var
%>
Har inte testat det ännu, tog det direkt ur huvet...
------------------
)|(
(o o)
-oo0-(_)-0oo-----
webeye.nu *hem*
vide@4sale.se
ToonsterMedlem sedan feb. 20001 590 inlägg Mitt tips är att alltid se till at datan är sparad oformaterad i databasen, och sedan att den formateras när man använder den på sidan. På så sätt blir den mer portabel, om man tex. vill exportera eller bearbeta datan.
/T
BrimbaMedlem sedan dec. 19995 875 inlägg Hej!
Det fungerar inte Vide
Type mismatch: 'Ubound' säger den..
rad 54.
det är:
For i = 1 To Ubound(Len(TAL))
Hmm
///Patrik
emissionMedlem sedan dec. 19996 721 inlägg Jag lyckas inte reproducera den här typen av fel, men kanske....
Sub mCint(tal)
tal=cstr(tal)
tal=replace(tal," ","")
mCint=CInt(tal)
End Sub
<%
TAL = ditt_nummer
For i = 1 To Ubound(Len(TAL))
If IsNumeric(InStr(TAL,i,1))
var = var & InStr(TAL,i,1)
End If
Next
TAL = var
%>
UBound tar en array som argument, LEN(Tal) returnerar en integer.
VideMedlem sedan dec. 19998 577 inlägg *skäms* ehrm... tänkte ju helt fel... detta har jag testat och det fungerar:
TAL = ditt_tal
For i = 1 To Len(TAL)
If Asc(Mid(TAL,i,1)) > 47 AND Asc(Mid(TAL,i,1)) < 57 then
var = var & Mid(TAL,i,1)
End If
Next
TAL = var
------------------
)|(
(o o)
-oo0-(_)-0oo-----
webeye.nu *hem*
vide@4sale.se
BrimbaMedlem sedan dec. 19995 875 inlägg Hej!
Vill bara tillägga att det inte fungerar så bra såsom du skrev det.
Det måste vara så här:
For i = 1 To Len(TAL)
If Asc(Mid(TAL,i,1)) > 47 AND Asc(Mid(TAL,i,1)) < 58 then
var = var & Mid(TAL,i,1)
End If
Next
Men annars var det guld!
Emission
Jag fick inte ditt att fungera, men tack endå!
///Patrik
[Redigerat av Brimba den 25 maj 2000]
VideMedlem sedan dec. 19998 577 inlägg Slarvfel av mig :( nån annan som vet att det finns tio siffor :e
------------------
)|(
(o o)
-oo0-(_)-0oo-----
webeye.nu *hem*
vide@4sale.se
emissionMedlem sedan dec. 19996 721 inlägg Med vides lösning blir tal en sträng (egentligen en variant), medan min lösning konverterade tillbaka till integer. Därmed kom ju problemet tillbaka, så det var ju inte så smart.
Jag har dock aldrig stött på det här. CInt funkar ju inte, men frågan är om inte CStr gör det.
t.ex.
"update tabell set tal=" & cstr(tal)"
osv.
Kanske inte, ändå..
VideMedlem sedan dec. 19998 577 inlägg Cint genererar bara error om en sträng inte innehåller nummeriska tecken, alltså när man tagit bort mellanslaget så borde det ju gå att konvertera till Integer, eller?
------------------
)|(
(o o)
-oo0-(_)-0oo-----
webeye.nu *hem*
vide@4sale.se
PatrikBMedlem sedan mars 20002 836 inlägg Hello,
undrar om det verkligen e så. Eftersom en session har startats med LCID ... och när du omvandlat så ligger du fortfarande kvar i samma session och således borde formateringen gå tillbaka till vad den var från början....hmmm, detta vart lite snurrigt men jag hoppas att ni förstår tänket ändå.
Det man skulle kunna göra är väl att passa variabeln till en annan sida där man stängt LCID sessionen och där göra "våra" konverteringar och in i databasen....eller är jag helt ute och cyklar...
//PatrikB