Eli miten onnistuu tekstintiedoston tekstien saaminen comboboxiin? osaan kyllä lukea yhen rivin, mutta pitäs saada kaikki tekstit comboboxiin...
Lue tiedostosta rivejä, kunnes Eof-funktio ilmoittaa tiedoston loppumisesta. Koodi menee suunnilleen näin:
Dim rivi As String
Open "oma.txt" For Input As #1
While Not Eof(1)
Line Input #1, rivi
Combo1.AddItem rivi
Wend
Close #1kiitoksia, toimii!
Mutta miten poistetaan combosta tietoa, entä kuinka tarkistaa onko tieto jo listattuna?
1) ComboBox sisältää metodin RemoveItem, jolle annat suluissa minkä tiedon haluat poistaa. Clear taas poistaa kaikki tiedot.
Combo1.RemoveItem(0) 'poistaa ensimmäisen tiedon Combo1.Clear 'poistaa loputkin tiedot
2) Esimerkiksi For-silmukalla
Dim rivi As String
Dim i As Integer
Dim OnJo As Boolean
Open "oma.txt" For Input As #1
While Not Eof(1)
Line Input #1, rivi
OnJo = False
For i = 0 To Combo1.ListCount - 1
If Combo1.List(i) = rivi Then OnJo = True
Next i
If Not OnJo Then Combo1.AddItem rivi
Wend
Close #1Toinen mieleen tullut tapa on käyttää String-tyyppistä apumuuttujaa, jos taulu on tyhjä tai se ensin tyhjätään, ennen kuin sinne viedään tietoja txt-filestä.
Dim rivi As String
Dim OnJo As String
Open "oma.txt" For Input As #1
Combo1.Clear
While Not Eof(1)
Line Input #1, rivi
OnJo = OnJo & "|" & rivi & "|"
'käytetään vbTextCompare:a, niin vertailu ei erottele isoja ja pieniä kirjaimia
'jos kirjain koolla on jotain väliä, niin tuon voi ottaa pois tai vaihtaa vbBinaryCompare:ksi
If InStr(1, OnJo, "|" & rivi & "|", vbTextCompare) <> 0 Then Combo1.AddItem rivi
Wend
Close #1Aihe on jo aika vanha, joten et voi enää vastata siihen.