Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: PHP: Excel combobox

Sivun loppuun

Slampo [20.10.2010 12:14:31]

#

Dodii, pientä onkelman tynkää liittyen Excel comboboxiin:

1. kolumnissa (vaikka T:T) löytyy läjä satamia, joissa on käyty, eli siellä voi olla jokin satama neljäkin kertaa ymsyms.

2. Käytän Comboboxia löytääkseni sataman, jossa ollaan käyty "jossakin vaiheessa", sisältö comboboxiin on haettu: (LIST FILL RANGE: T:T)

ONGELMA:

1. Haluaisin satamat lajiteltuna comboboxiin aakkosjärjestyksessä
2. Tuplat pois
3. Combobox listaa myös tyhjät solut, eli sisältöä on noin 2% listassa. Miten saan boxin poistamaan listalta tyhjät solut
4. Satamia tulee koko aika lisää, saako boxin updeittaamaan sen mukaan?

Kiitokset jo etukäteen vastauksen uhranneelle!

-Suht aloittelija vielä

Jokotai [20.10.2010 16:41:15]

#

Teet ensin listan, jossa tarkistelet, että nuo ehdot toteutuvat ja siiten vasta teet sen listan perusteella comboboxin.

Slampo [21.10.2010 07:17:09]

#

Tuo ei ihan vastannut kysymykseen, niitten tyhjien rivien poisto? Aakkosjärjestys? Ja tuola menetelmällä se on jo työläämpää päivittää kolumneja kuin käyttää itse työkirjaa..

Jokotai [21.10.2010 12:27:00]

#

Siis luot listan. Tarkistat, että onko listan soluun kirjoitettu mitään. Poistat solun jos ei. Siirrät soluja aakkosjärjestykseen(tätä algoritmia voi optimoida mukavasti). Tarkistat, että onko kahta samaa(ne ovat nyt vierekkäin). Muodostat listan pohjalta comboboxin. Ei tuohon mene edes minuuttia.

Slampo [25.10.2010 12:44:02]

#

Visual basicilla ymmärtääkseni tuo pitäisi järjestyä suht yksinkertaisella kirjoittamisella, sitä siis tässä ajan takaa, että oppisi sitä kuuluisaa koodaamistakin :) Ja siinä on sellainenkin pikku mutka, että muutkin käyttävät tätä exceliä kun itse olen lomalla, ja he eivät tiedä puoliakaan verrattuna omaan vaatimattomaan taitooni excelin käytössä, ja en siis haluaisi joka kerta töihin tullessani siivota heidän aiheuttamia sotkuja..

Jokotai [25.10.2010 15:35:10]

#

Siis tarkoitin että luot ohjelman, joka tekee yllä mainitut asiat.
Tarkoitatko, että samaa exel taulukkoa? Jos niin, niin voit tehdä ohjelman, joka lisää sen automaattisesti taulukon loppuun. esim. painaa nappulaa ja lukee arvon solusta ja lisää sen taulun loppuun.
Jos tarkoitit, että samaa exel ohjelmaa, niin saat kertoa lisää ongelmasta.

Slampo [25.10.2010 20:28:33]

#

SIinähän se kun ohjelmia en osaa luoda =)

Joo k.o. tiedot ovat siis Excelissä, ja käyttäen excelin visual basic editoria pitäisi k.o. homma ratketa.

Satamat ovat käyntijärjestyksessä kolumnilla D:D (List fill range) ja tuota listaa käyttäen satamat pitäisi saada Comboboxiin aakkosjärjestysessä, ja ilman tyhjiä soluja, eli kun comboboxin listaa vierittää alaspäin, tulee boxiin tyhjää (eli ne loput 30000 tyhjää solua).

Ymmärtääkseni combobox pystyy lajittelemaan listan, ja poistamaan tyhjät solut..

Oliko tämä yhtään selkeämpi =)

Jokotai [25.10.2010 21:35:42]

#

Googlesta löytyy useita apuja hakusanoilla:
combobox empty
combobox alphabetical
Sitten vain lisäksi silmukka, joka käy läpi kaikki alkiot ja poistaa jos vieressä on samanlainen.

Slampo [26.10.2010 00:20:14]

#

Siis se menee jotenkin näin:

Private Sub ComboBox1_Change()

..jotain jotain...sort.SortFields.Clear
..jotain jotain...sort.SortFields.Add Key:=Range("T1"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
   jotain.sort
        .SetRange Range("T1:T136")
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
        Columns("T:T").Select
        ActiveSheet.Range("$T$1:$T$136").RemoveDuplicates Columns:=1, Header:=xlNo

End Sub

Googlesta on etitty , myös ehdottamillasi vinkeillä eikä siellä löydy ku perus höpöhöpöä..

Mod. lisäsi kooditagit


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta