Olen käynyt tämän läpi monta kertaa. Sen pitäisi tulostaa esimerkiksi seuraavanlainen teksti (riippuen käyttäjän valinnoista):
"Maanantai: tarjottiin tomaattia ja kurkkua, konna söi tomaattia. Konna ei pissannut ja kakkasi"
Ongelma on siinä, että se ei suotu tulostamaan tuota "ei pissannut" kohtaa ja tulee tällainen teksti:
"Maanantai: tarjottiin tomaattia ja kurkkua, konna söi tomaattia. Konna ja kakkasi"
Koodi on tällainen:
Dim matarj As String Dim masöi As String Dim mapis As String Dim makak As String matarj = txtmatarj masöi = txtmasöi If chkmapis.Value = True Then mapis = "pissasi" ElseIf chkmapis.Value = False Then mapis = "ei pissannut" ElseIf chkmakak.Value = True Then makak = "kakkasi" ElseIf chkmakak.Value = False Then makak = "ei kakannut" End If MsgBox konnakansio Open konnakansio & ("\ruoka.txt") For Append As #4 Print #4, ("Maanantai: tarjottiin ") & matarj & (", konna söi ") & masöi & (". Konna ") & mapis & (" ja ") & makak Close #4
Noista ElseIffeistä toteutuu vain yksi. Laita joka tsekkaus omaan if-lauseeseen. Esim. näin
If chkmapis.Value = True Then mapis = "pissasi" else mapis = "ei pissannut"
If chkmakak.Value = True Then makak = "kakkasi" Else makak = "ei kakannut"
Aijaa.. kiitos setä
Offtopic: Mikä ihmeen ohjelma toi on? Teetkö jotakin pissakakkahuumorin top10 ohjelmaa?
Ei... ei se vieläkään toimi.
If chkmapis.Value = True Then mapis = "pissasi" else mapis = "ei pissannut"
If chkmakak.Value = True Then makak = "kakkasi" Else makak = "ei kakannut"
nyt se näyttää vain joka kerta "ei pissannut" ja "ei kakannut". Mikä tässä muka on vielä vikana?
Liekö joku lemmikkikilpikonnan ruokavalionseurantaohjelma.
Se on maakilpikonnan kirjanpito-ohjelmasysteemihommeli. Niiden syömisistä ja ulostamisista sun muusta pitää pitää melko tarkasti kirjaa.
Sitten varmaan ne valintaruudut chkmapis ja chkmakak ei pelaa.
En oo varma tästä, mutta kokeile:
If chkmapis.Value = True Then mapis = "pissasi" End If If chkmapis.Value = False Then mapis = "ei pissannut" End If If chkmakak.Value = True Then makak = "kakkasi" End If If chkmakak.Value = False Then makak = "ei kakannut" End If
Itellänikin on ollut ongelmia tuon If:n kanssa...
Hienoa nyt se toimii! Hävettää sanoa, mutta vika oli tässä:
If chkmapis.Value = True Then
Eli tuo missä lukee true, olisi pitänyt olla "checked", eli näin:
If chkmapis.Value = Checked Then
Seruraavalla kerralla voinet harkita otsikointiasi tarkemmin.
Itselläni on muuten mielikuva jäänyt jostain, että muuttujissa ei kannattaisi käyttää Ä ja Ö kirjaimia. Voi kuulemma tuottaa ongelmia.
Kuin myös labeleiden, textboxien ,jne, jne nimeämisessä.
Muutoinkin kannattaa välttää noiden kirjaimien käyttöä, muissa kuin tulosteissa. esim "" välissä voi käyttää, jne, jne.
Aihe on jo aika vanha, joten et voi enää vastata siihen.