Olen tekemässä ohjelmaa joka käy rivit läpi etsii joka riviltä samat numerot tässä tapauksessa.
Miten teen sen silleen että se avaa tiedoston esim. c:\numerot.txt ja käy rivi riviltä läpi numerot. esim. rivit:
0102030405
0203040506
0304050607
Ja näistä etsii esim. 03 numeroa.
Tein alun mutta en päässy puusta pitkälle:
*/ ------------------------------
For I = 1 to 5
If Mid$(WinNum, i, 1) = Mid$(MyNum, i, 1) Then
strmatch = strmatch & Mid$(WinNum, i, 1)
End If
Next I
Matches = Len(strMatch)
Miten tästä edetä?
Alun osaan mutta ....
12
992
Vastaukset
- jokuvaan
kuinka yksinkertainen ja helppo.
Esimerkissä etsitään siis "03" merkkijonoa, jos se löytyy riviltä, rivi tulostetaan.
Open App.Path & "\numerot.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, rivi
If InStr(1, rivi, "03", vbTextCompare) Then Print rivi
Loop
Close #1- jokuvaan
Tuo App.Path on ohjelman oletushakemisto, siis mistä se ohjelma käynnistetään, tuo numerot.txt tulee olla siinä hakemistossa.
Voit kirjoittaa luonnollisesti koko polun, vaikka "C:\numerot.txt" tai missä se sitten onkaan. - Yksin pulassa...
jokuvaan kirjoitti:
Tuo App.Path on ohjelman oletushakemisto, siis mistä se ohjelma käynnistetään, tuo numerot.txt tulee olla siinä hakemistossa.
Voit kirjoittaa luonnollisesti koko polun, vaikka "C:\numerot.txt" tai missä se sitten onkaan.Miten haetaan kahta numeroa tekstistä esim. 03 lisäksi numeroa "15"??
- pulassa
Miten voi formiin määritellä esimerkiksi kolme lukua joita etsitään. esim. 02, 05 ja 29??
Siis nämä luvut haluaisin itse määrätä? - jokuvaan
pulassa kirjoitti:
Miten voi formiin määritellä esimerkiksi kolme lukua joita etsitään. esim. 02, 05 ja 29??
Siis nämä luvut haluaisin itse määrätä?Lisäämällä Form1 kolme Text-kehystä
kirjoittamalla niihin haettavat merkkijonot.
Jos jokin noista ehdoista toteutuu, rivi tulostuu.
If InStr(1, rivi, Text1.Text, vbTextCompare) Then Print rivi
If InStr(1, rivi, Text2.Text, vbTextCompare) Then Print rivi
If InStr(1, rivi, Text3.Text, vbTextCompare) Then Print rivi - Pulassa
jokuvaan kirjoitti:
Lisäämällä Form1 kolme Text-kehystä
kirjoittamalla niihin haettavat merkkijonot.
Jos jokin noista ehdoista toteutuu, rivi tulostuu.
If InStr(1, rivi, Text1.Text, vbTextCompare) Then Print rivi
If InStr(1, rivi, Text2.Text, vbTextCompare) Then Print rivi
If InStr(1, rivi, Text3.Text, vbTextCompare) Then Print riviEi toimi toi antamasi ehdotus.
en ainakaan minä sitä saa toimimaan.. - pulasa
Pulassa kirjoitti:
Ei toimi toi antamasi ehdotus.
en ainakaan minä sitä saa toimimaan..Lisäys edelliseen... kaikki kolme lukua pitäisi olla kerrallaan haku ehtoina. Ei siis yksitelle vaan kaikki esim. 02,03,05
- jokuvaan
pulasa kirjoitti:
Lisäys edelliseen... kaikki kolme lukua pitäisi olla kerrallaan haku ehtoina. Ei siis yksitelle vaan kaikki esim. 02,03,05
laita ehdot peräkkäin, eli jokaisen ehdon pitää toteutua:
If InStr(1, rivi, Text1.Text, vbTextCompare) Then
If InStr(1, rivi, Text2.Text, vbTextCompare) Then
If InStr(1, rivi, Text3.Text, vbTextCompare) Then Print rivi
End If
End If - Pulassa
jokuvaan kirjoitti:
laita ehdot peräkkäin, eli jokaisen ehdon pitää toteutua:
If InStr(1, rivi, Text1.Text, vbTextCompare) Then
If InStr(1, rivi, Text2.Text, vbTextCompare) Then
If InStr(1, rivi, Text3.Text, vbTextCompare) Then Print rivi
End If
End IfEi toimi toi lauseesi siinä aiemmassa. Kirjoita toimiva coodi
- jokuvaan
Pulassa kirjoitti:
Ei toimi toi lauseesi siinä aiemmassa. Kirjoita toimiva coodi
Siis, tee tekstitiedosto numerot.txt
ja tallenna se johonkin.
Tässä esimerkissä "C:\hakemisto\polku\"
Tee kolme Text-kehystä, Text1, Text2 ja Text3.
ja jos laitat Text1 "01", Text2 "02", Text3 "03"
ja jos kirjoitit tuohon tiedostoon vaikka rivin "01342025903", josta siis löytyy kaikki Text-kehyksissä syöttämäsi arvot, niin kyllä tulostuu näytölle. Ja ei niiden tarvitse olla tuossa järjestyksessä, kunhan vaan kaikki annetut merkkojonot löytyvät riviltä.
Open "C:\hakemisto\polku\numerot.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, rivi
If InStr(1, rivi, Text1.Text, vbTextCompare) Then
If InStr(1, rivi, Text2.Text, vbTextCompare) Then
If InStr(1, rivi, Text3.Text, vbTextCompare) Then Print rivi
End If
End If
Loop
Close #1 - Basillius
jokuvaan kirjoitti:
Siis, tee tekstitiedosto numerot.txt
ja tallenna se johonkin.
Tässä esimerkissä "C:\hakemisto\polku\"
Tee kolme Text-kehystä, Text1, Text2 ja Text3.
ja jos laitat Text1 "01", Text2 "02", Text3 "03"
ja jos kirjoitit tuohon tiedostoon vaikka rivin "01342025903", josta siis löytyy kaikki Text-kehyksissä syöttämäsi arvot, niin kyllä tulostuu näytölle. Ja ei niiden tarvitse olla tuossa järjestyksessä, kunhan vaan kaikki annetut merkkojonot löytyvät riviltä.
Open "C:\hakemisto\polku\numerot.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, rivi
If InStr(1, rivi, Text1.Text, vbTextCompare) Then
If InStr(1, rivi, Text2.Text, vbTextCompare) Then
If InStr(1, rivi, Text3.Text, vbTextCompare) Then Print rivi
End If
End If
Loop
Close #1Eiks toi toimis lyhyemmin:
If (tosi) And (tosi) And (tosi) Then PrintLine
ei tarvis kuin yhden Iffin :) - yksinpulassa
Basillius kirjoitti:
Eiks toi toimis lyhyemmin:
If (tosi) And (tosi) And (tosi) Then PrintLine
ei tarvis kuin yhden Iffin :)olen tuota ehtolausetta kokeillut mutta ei se tee haluttua toimintoa. Eli toisin sanoen ei toimi vaikka pitäisi.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Valtion alijäämä = yritystukien määrä = 10 mrd. euroa
Mutta persut eivät vaan suostu tasapainottamaan valtion budjettia, vaikka yritystuet on tiedetty haitallisiksi. Miksi p987432Suomi käyttää sosiaalietuuksiin suhteessa eniten rahaa koko maailmassa
Suomi käyttää sosiaaliturvaetuuksiin enemmän rahaa suhteessa bruttokansantuotteeseen kuin mikään muu maa maailmassa. Su3636513Grahn-Laasonen: "Kansalainen joutuu pettymään, jos demareita äänestää"
Ministeri viittaa tuoreeseen Helsingin Sanomien juttuun, jossa demarijohtajan keinoja Suomen suunnan muuttamiseksi esite613864Vähän fiksumpi Nimi kisa ? :=)
Kirjoita teidän etunimet allekkain. Jos nimissä on joku kirjain sama, poista se. Tee sama tarkistus kaikille kirjaimill293599Mikä on suurin luonne- eroavuus sinussa
Ja kaivatussasi? Vaikuttaako se huonoon vai hyvään suuntaan siinä, että teistä voisi tulla jotain?1922071Kenen haluaisit voittavan Amazing Racen: Tuomas ja Esko, Millu ja Karoliina vai Maria ja Vilma?
Amazing Race Suomi huipentuu lauantaina finaaliin. Jäljellä on kolme paria ja tiedossa on tehtäviä, jotka järkyttävät os181793- 611541
Gallup: Katsotko Salkkareita tai oletko katsonut?
Salatut elämät on suomalaisten suosikkisarja vuosikymmenestä toiseen. Salkkareiden parissa viettää aikaa sukupolvet laps181506Elämäni biisi starttaa uudessa muodossa - Voi olla pettymys faneille!
Elämäni biisi ja juontaja Katja Ståhl ovat suomalaisten suosikkeja. Lauantai-iltaisin ohjelma on vetänyt tv-katsojat arv11400Amazing Race Tomas rehellisenä Esko-appiukon, 63, tilasta: "Sairastelut ja..."
Tomas Grekov ja Esko Rotola-Pukkila ovat mukana Amazing Race Suomi -kisassa. Ja nyt vuorossa on finaali. Hankaluuksia m11387