Avatar billede mega-hawk Nybegynder
18. juli 2009 - 20:17 Der er 4 kommentarer og
1 løsning

min tekst til tal. hvordan?

Jeg er stadig igang med mit budget skema og som sagt er jeg helt ny til vb så svar nu ikke med nogle helt vide koder som jeg ikke forstår alligevel ;o)

Nå men mit problem er at jeg har alle 12 måneder og så en listbox tilsidst hvor den skal regne alle mine udgifter sammen.
Så min kode ser sådan her ud.

total = jan + feb + mar + apr + maj + jun + jul + aug + sep + okt + nov + dec
totallst.AddItem (total)

Og jeg tror heller ikke det er den der er noget galt med.
Problemet er bare a når jeg siger 1+2+3 osv ender jeg op med 123

mine variabler ser sådan her ud

Dim jan As String
Dim feb As String
Dim mar As String
Dim apr As String
Dim maj As String
Dim jun As String
Dim jul As String
Dim aug As String
Dim sep As String
Dim okt As String
Dim nov As String
Dim dec As String
Dim total As String

men jeg er stærkt overbevist om min fejl ligger et eller andet sted i disse linjer.

jan1:
jan = InputBox("skriv udgiften for Januar måned")
If IsNumeric(jan) = False Then
MsgBox "HALLO!!! du kan kun skrive tal her og du skrev " & jan & " prøv igen."
GoTo jan1
Else
If jan = "" Then jan = "0"
januarlst.AddItem (jan)
End If

Dette er en vider udvikling fra et eks i en bog.
Har også lavet eksemplet i bogen.
Forskelen var bare at der virkede det.
Hvor er min fejl?
Avatar billede mega-hawk Nybegynder
18. juli 2009 - 20:33 #1
har lige ændret lidt i min kode til den nu ser sådan her ud:

total = Val(jan) + feb + mar + apr + maj + jun + jul + aug + sep + okt + nov + dec
totallst.AddItem (total)


Det virker.
Men hvorfor virker det?
Hvorfor skal det ikke stå
total = val(jan) + val(feb) +val(mar) osv?
Avatar billede kabbak Professor
19. juli 2009 - 00:13 #2
prøv med
total = Evaluate(jan + feb + mar + apr + maj + jun + jul + aug + sep + okt + nov + dec)
Avatar billede tjp Mester
19. juli 2009 - 00:23 #3
Fordi tegnet + har flere funktioner, dels kan det bruges til at lægge tal sammen, dels kan det sætte strenge sammen. Når + står mellem to strenge antages det at du vil sætte dem sammen. Dette giver ikke helt mening, når + står mellem et tal og en streng, og derfor tolkes resten af månederne også som tal.
Avatar billede mega-hawk Nybegynder
19. juli 2009 - 09:33 #4
javel ja.

Ja jeg er jo helt ny til det her vb så skal jo lige lære det og så er det jo ikke noget som er mere træls end noget der virker men man ved ikke hvorfor.

Nå men tjp jeg er da godt tilfreds med din kommentar så skriv lige et svar så du kan få dine point og takker
Avatar billede tjp Mester
19. juli 2009 - 11:30 #5
Here U R. :-)
Det hedder i øvrigt 'operator overloading' når en operator som fx + kan bruges på forskellige typer operander.
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