Początek makra z odwołaniem do arkusza Dane może mieć postać:
Dim zakres As Integer, lista As String
zakres = Sheets("LZ").Cells(22, 12)
With Sheets("Dane")
lista = .Range(.Cells(2, 57 + 2 * zakres), .Cells(2, 57 + 2 * zakres).End(xlDown)).Address(External:=True)
End With
Jeśli jeszcze nie bardzo przywiązałeś się do list rozwijanych z formularza to masz dwie podstawowe alternatywy:
1. Pole kombi z formularza ActiveX - daje większe możliwości
2. Lista z menu Dane - Poprawność danych - mniej obciąża skoroszyt, można listy tworzyć makrem lub definiować dynamiczne zakresy (nazwy) za pomocą formuł.
Sugeruję ostatnie rozwiązanie. Jednak wtedy tracisz możliwość manipulowania wielkością czcionki w liście (taką możliwość mają formanty ActiveX)
Hej |