Zmienna nazwy UserForm

Wątek przeniesiony 2024-06-25 14:48 z Inne języki programowania przez cerrato.

0

Witam. Jestem początkującym i tworzę sobie program do zawodów LA.
Stworzyłem taki kod modułu (jest to jego kawałek):

Sub pobieranie_danych(zeszyt As String, litera As Integer, kom As Integer)
druzyna_1_dziewczyny_wzor.Caption = Worksheets(zeszyt).Range("a11")
druzyna_1_dziewczyny_wzor.Logo_1.Caption = Worksheets("zeszyt).Range("a11")
druzyna_1_dziewczyny_wzor.Nazwisko_1.Text = Worksheets(zeszyt).Cells(litera, kom)
druzyna_1_dziewczyny_wzor.Nazwisko_2.Text = Worksheets(zeszyt).Cells(litera + 1, kom)
druzyna_1_dziewczyny_wzor.Nazwisko_3.Text = Worksheets(zeszyt).Range(nazw + 2)
druzyna_1_dziewczyny_wzor.Nazwisko_4.Text = Worksheets(zeszyt).Range(nazw + 3)
druzyna_1_dziewczyny_wzor.Nazwisko_5.Text = Worksheets(zeszyt).Range(nazw + 4)
druzyna_1_dziewczyny_wzor.Nazwisko_6.Text = Worksheets(zeszyt).Range(nazw + 5)
End Sub

W moim programie jest 8 drużyn i każda ma osobny Formularz wpisywania wyników (wszystkie formularze wyglądają identycznie). Następnie chcę wywołać ten moduł w każdym nowo otwartym UserForm w UserForm_Activate
I teraz moje pytanie: Jak zastąpić nazwę, UserForm - "druzyna_1_dziewczyny_wzor", tak żebym nie musiał zmieniać tego dla każdego nowego UserForm?

0

Bez sprawdzania:

Sub pobieranie_danych(zeszyt As String, litera As Integer, kom As Integer, uf as UserForm) ' albo uf as druzyna_1_dziewczyny_wzor
uf.Caption = Worksheets(zeszyt).Range("a11")
uf.Logo_1.Caption = Worksheets("zeszyt).Range("a11")
uf.Nazwisko_1.Text = Worksheets(zeszyt).Cells(litera, kom)
uf.Nazwisko_2.Text = Worksheets(zeszyt).Cells(litera + 1, kom)
uf.Nazwisko_3.Text = Worksheets(zeszyt).Range(nazw + 2)
uf.Nazwisko_4.Text = Worksheets(zeszyt).Range(nazw + 3)
uf.Nazwisko_5.Text = Worksheets(zeszyt).Range(nazw + 4)
uf.Nazwisko_6.Text = Worksheets(zeszyt).Range(nazw + 5)
End Sub

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.