Hirdetés

Keresés

Új hozzászólás Aktív témák

  • Mutt

    senior tag

    válasz the radish #20568 üzenetére

    Hello,

    Létrehoztam egy "userformot", bemásoltam az általad leírtakat, de nem tudom működésre bírni.
    A macro-ba kell valami hivatkozás, hogy menjen?

    A userformot be kell tölteni, majd meg kell jeleníteni. Ezt mind egy modulban, a userformon kívül kell megtenned.
    A betöltés elhagyható, csak akkor érdemes külön foglalkozni vele, ha a form elindítása időigényes és nem akarod hogy a felhasználó erre várjon.

    Tipikusan egy form elindítása így megy:

    Sub SajatForm()
    UserForm.Show
    End Sun

    Ekkor a UserForm Initialize eseményében megadott eljárások futnak le és megjelenik a form.

    A form bezárása annyiban tér el, hogy a UserForm egyik eleméhez (többnyire egy Bezárás gombhoz) írod, nem pedig egy külön modulba. A bezárás Unload paranccsal megy, el is lehet rejteni a Hide-al, ekkor memórában marad, de nem látható.

    Ide felraktam egy egyszerű mintát.

    ...TextBox1.Text = Format$(Date, "yyyy.mm.dd")
    miért csak a mai dátummal tölti ki a cellát amit ráadásul át sem tudok írni.

    A Date VBA függvény, amit használsz mindig az aktuális dátumot adja meg.
    A szövegdonboz vezérlőnek valószínű a locked tulajdonsága True-ra van állítva. Esetleg az Enabled pedig Falsera, ekkor szürke a tartalma.

    Az egyik nagy hiányosság, hogy alapból nincs olyan vezérlő az Excelben, amely a dátumválasztást segíti. Korábbi változatokban volt egy DatePicker, de az megszűnt, helyette mindenki vmit összerakott és azt használja. Én ezt használom.

    üdv

Új hozzászólás Aktív témák