Avatar billede mansoor Nybegynder
14. december 2000 - 11:21 Der er 13 kommentarer og
2 løsninger

Convertering af en string til integer - HASTER

Hvordan converterer man fra sting til interger i VB.

Avatar billede cstern Nybegynder
14. december 2000 - 11:25 #1
intTal = val(strTal)
f.eks
intTal = val(\"2536\")
Avatar billede kasseper Nybegynder
14. december 2000 - 11:29 #2
eller Cint(tal)
Avatar billede jimmidreng Nybegynder
14. december 2000 - 11:31 #3
Eller FormatNumber(strTal)

/Jimmi
Avatar billede mansoor Nybegynder
14. december 2000 - 11:43 #4
Hej Igen
Prøv at se på koden, jeg vil gerne summerer Antal_Deltager_Ialt, som er et tekstfelt.

Men når jeg køre min rapport, får jeg fejlen : Ivalid Use of null.

Private Sub Detaljesektion_Print(Cancel As Integer, PrintCount As Integer)
  AntalIalt = AntalIalt + Val(Antal_Deltagere_Ialt)
End Sub

Jeg er villig til at give flere point, til den der hjælper.
Avatar billede cstern Nybegynder
14. december 2000 - 11:44 #5
start med at indsætte \"0\" i feltet.
Avatar billede kasseper Nybegynder
14. december 2000 - 11:48 #6
Private Sub Detaljesektion_Print(Cancel As Integer, PrintCount As Integer)
  if IsNull(Antal_Deltager_Ialt) Then
  AntalIalt = 0
  else
  AntalIalt = AntalIalt + Val(Antal_Deltagere_Ialt)
  end if
End Sub

Avatar billede cstern Nybegynder
14. december 2000 - 11:58 #7
hmm, fejlen må være et andet sted for:

25 + val(\"\") = 25
25 + val(\"ABC\") = 25
25 + val(\"0\") = 25

(dvs val giver altid 0 hvis ikke strengen indeholder tal)

Er Antal_Deltager_Ialt defineret som integer?

hvad giver debug.print Antal_Deltager_Ialt lige før udregningen?
Avatar billede kasseper Nybegynder
14. december 2000 - 12:00 #8
\"\" er ikke null men den tomme streng, der er stor forskel....
Som hans fejlmeld. antyder er der null i hans Antal_Deltagere_Ialt....
Avatar billede mansoor Nybegynder
14. december 2000 - 12:08 #9
Debug.print giver Null
Avatar billede kasseper Nybegynder
14. december 2000 - 12:10 #10
Virker det jeg lavede ikke ?????
Avatar billede mansoor Nybegynder
14. december 2000 - 12:19 #11
Tak for hjælpen, det virkede, nu skal jeg bare have den til at tælle sammen for alle siderne, og ikke kun én side
Avatar billede mansoor Nybegynder
14. december 2000 - 12:22 #12
Fik I jeres point? - jeg valgte at giv kasseper 30 og cstern 20, men jeg er usikker på om I fik dem?
Avatar billede cstern Nybegynder
14. december 2000 - 12:26 #13
spm er stadigt åbent.

kasseper: Jeg ved godt at \"\" <> NULL men hvordan bliver en streng NULL med mindre man tildeler den værdien et eller andet sted? En ny streng som ikke er initialiseret har vel værdien \"\"?
Avatar billede kasseper Nybegynder
14. december 2000 - 15:23 #14
\'En ny streng som ikke er initialiseret har vel værdien \"\"? \' --> Ikke så vidt jeg ved, en streng der ikke er initialiseret har længden Null, mens strengen \"\" har længden 0.

Nu ved jeg ikke al verden om VB, men du kender jo godt lidt til ASP & VBScripts, så vidt jeg husker....?
Der har du netop et eksempel på en streng der nemt kan være null. Du har en form med et tesktfelt og hvis du submitter den og i din action side henter den med request.form(\"mitTekstFelt\") så vil den returnere NULL, men strengen eksistere....
Avatar billede cstern Nybegynder
14. december 2000 - 15:40 #15
Ok, i \"rigtig\" VB bliver variable automatisk tildelt en nul (ikke NULL) værdi, dvs en streng der ikke har fået tildelt en værdi er = \"\"
og en integer er 0, en boolean er False osv.

Så for at strTal skal være NULL er det altså nødvendigt med en

strTal = NULL
eller
strTal = enandenvariabel (hvor enandenvariabel er NULL)

i koden. Så vidt jeg ved - det er derfor jeg spørger.
Men jeg kender ikke meget til ASP eller VBScript - men det kan jo meget vel være det der er humlen, altså at det er et af disse \"sprog\" mansoors program er lavet i.
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