Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VBA: ListBox-ongelma

VBNewbie [17.03.2011 10:05:08]

#

Hei,

Olen aloitteleva VBA-ohjelmoija ja minulla on outo ongelma ListBoxien kanssa.

Olen tekemässä Excel-mallia, jossa käytetään yhteensä kahdeksaa ListBox-objektia. Näihin tallennetaan tietoja komentopainiketta klikkaamalla. Kaikki ListBoxit ovat ominaisuuksiltaan identtisiä ja sijaitsevat kahdella eri välilehdellä. Ensimmäisen välilehden ListBoxit toimivat täysin moitteettomasti, mutta toisella välilehdellä olevat käyttäytyvät oudosti.

Ongelma esiintyy ainoastaan kun avaa Excel-tiedoston ja ensimmäisen kerran tallentaa tiedot ListBoxeihin komentopainiketta klikkaamalla. Tällöin toisella välilehdellä olevien boxien leveys ja korkeus kasvaa automaattisesti muutamien senttien verran. Ongelma ei ratkea vaikka määritän leveyden ja korkeuden uudestaan halutulle tasolle, sillä ongelma toistuu aina tiedoston sulkemisen ja uudelleenavaamisen jälkeen.

Ongelman outoutta lisää se, että toisella välilehdellä sijaitsevien ListBoxien koko pysyy muuttumattomana vaikka niiden ominaisuudet ja tietojen syöttämistä varten kirjoitettu VBA-koodi on täysin identtinen ongelmaisten boxien kanssa.

Olisin kiitollinen ideoista ongelman ratkaisemiseksi :)

Petja [17.03.2011 20:43:57]

#

Olen itsekin joskus, kun vielä VBA:n parissa puuhastelin törmännyt samaiseen ongelmaan. Korjaamiseen tuskin on mitään ratkaisua, näin minä ainakin sanon.

groovyb [17.03.2011 20:51:22]

#

laitappa koodisi niin katsotaan

edit

------------------

'testaappa ensin tätä:
'
'activex listboxilla on IntegralHeight parametri, vaihda se falseksi
'tämä tehdään joko koodilla: (vaihda tietenkin vastaamaan oman kontrollin nimeä)
ListBox1.IntegralHeight = false
'tai vaihda parametri-ikkunan kautta

neau33 [17.03.2011 21:21:49]

#

Moi VBNewbie!

Kokeiles nyt vielä semmosta, että nappaat sitä suunnittelutila nappia ja sit tsekkaat jokasen listboxin muotoiluasetuksista, että Ominaisuudet välilehdellä olevan radionappulan: Älä siirrä tai muuta kokoa solujen mukaan keskellä näkyy vihreetä...

VBNewbie [04.04.2011 09:20:13]

#

Kiitoksia kaikille vastauksista! Ratkaisin jo ongelman ennen kuin lähetitte vastauksenne poistamalla ongelmaisen välilehden ja tekemällä sen uudestaan "from scratch". Ominaisuudet-välilehti oli kyllä kaikissa kunnossa, mutta IntegralHeightiä en testannut. Ratkaisuun olisi saattanut siis olla yksinkertaisempikin vaihtoehto :)

-VBNewvie

Vastaus

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

Tietoa sivustosta