FORM elemeinek feltételes címzése
2021-07-26T08:10:26+02:00
2021-07-28T09:48:39+02:00
2022-08-12T03:50:31+02:00
grammatica
Sziasztok

Próbáltam választ találni a meglévő témák közt de nem jártam sikerrel. VBA-ból eléggé alapon vagyok + évek óta nem használtam. Most egy olyan problémával találtam szembe magam, hogy egy UserForm gombjait kellene változók alapján címezgetni és változtatni rajtuk. Egyszer már kaptam itt használható választ, hátha most is sikerül
Azt is próbáltam, hogy kiolvasni a gomb tulajdonságainak egy karakterét de a GoTo utasítás nem működött úgy, hogy "GoTo x"

Igazából az lenne jó megoldás ha az alábbit tudnám valahogy megoldani, mert így egy ciklussal végig tudnék szaladni a gombokon:
"UserForm1.cmd_player_" & x & "_" & y & ".Caption" = "VALAMI"
De ez nem működik. Létezik valami megoldás, hogy ha
x=4 és y=2
akkor
UserForm1.cmd_player_4_2.Caption = "VALAMI"
helyett valahogyan az "x" és "y" valahogyan dinamikus maradjon  akár Cint() vagy Cstr() összefűzéssel?

Előre is köszönöm
Mutasd a teljes hozzászólást!
Szia!

Használd, még csak végig sem kell menni az összes kontrolon...

For i = 1 To 8 strControlName1 = "Dolg_nev" & i Me(strControlName1).Caption = "" Next i
Mutasd a teljes hozzászólást!

  • Szia!
    A Userform Controls gyűjteményén pl. For Each ciklussal végig tudsz menni.
    Meg tudod nézni, hogy az adott Control neve egyezik-azzal aminek változtatni szeretnéd a tulajdonságát.

    For Each ctl In Userfom1.Controls If ctl.Name=cmd_player_" & x & "_" & "_" & y Then ctl.Caption="VALAMI" :'Exit For Next
    Ha csak egy vezérlőt szeretnél megváltoztatni, akkor az Exit For miatt nem keres tovább.
    Ha többet is szeretnél változtatni, akkor azt is meg tudod tenni egy ciklusban (exit for nélkül működtetve). 
    Üdv.
    Mutasd a teljes hozzászólást!
  • Szia!

    Használd, még csak végig sem kell menni az összes kontrolon...

    For i = 1 To 8 strControlName1 = "Dolg_nev" & i Me(strControlName1).Caption = "" Next i
    Mutasd a teljes hozzászólást!
  • Kedves Fferi
    Ezt a megoldást nem sikerült életre keltenem. Ez természetesen nem jelenti azt, hogy ne lenne jó a megoldás, csak nem tudom, hogy hol kellett volna belenyúlnom. De azért nem küzdök vele, mert a feladatohoz jobban illeszkedik az István megoldása. Nagyon köszönöm a segítőkész választ
    Mutasd a teljes hozzászólást!
abcd