Formularze użytkownika programu Excel - porady dotyczące programu Excel

Spisie treści
W programie Excel 97 wprowadzono nowe formularze użytkownika. Po angielsku naucz mnie, jak tworzyć i używać pola listy.

MrExcel niedawno ukończył niestandardową aplikację dla jednego z naszych czytelników. W tej aplikacji Excel użytkownik wprowadziłby 150 punktów danych dla określonego numeru części na arkuszu.

1. Kliknięciem przycisku ten numer części i powiązane wartości danych są zapisywane w bazie danych w Sheet2. To było w porządku, ale potem potrzebowaliśmy sposobu, aby użytkownik wywoływał zapis z arkusza 2, aby mógł przejrzeć wpisy. Chciałem pozwolić użytkownikowi otworzyć formularz z rozwijanym polem pokazującym wszystkie elementy na arkuszu

2. Użytkownik mógł przewinąć, wybrać element, a następnie wyciągnąć te wartości z arkusza 2 do arkusza 1.

Jak wielu z was, zacząłem pisać makra Excela w Excelu 5.0. Cały ten edytor makr w programie Excel 97 jest nieco onieśmielający. W tym tygodniu pokażę ci krok po kroku, jak utworzyć pole listy dla tego projektu. W tym tygodniu skupiamy się tylko na polu kombi. Docelowi odbiorcy to ktoś, kto zna podstawy makr programu Excel, ale nigdy nie używał formularza do interakcji z makrem.

Pierwszy krok: zmieniłem istniejące makra tak, aby po dodaniu rekordu do arkusza 2 makro nadawało nazwę zakresowi zawierającemu numery części, które mają zostać nazwane „PartList”. W komórce A1 znajduje się nagłówek, a pierwszy element w komórce A2. Użyłem polecenia End, aby znaleźć ostatni wiersz:

LastRow = Range("A6000").End(xlUp).Row ActiveWorkbook.Names.Add Name:="PartList", RefersTo:="=Sheet2!$A$2:$A$" & LastRow

Drugi krok: ułóż formularz pola listy. Wykonaj następujące kroki:

  • Uruchom Edytor Visual Basic, naciskając klawisze alt-F11
  • Z menu wybierz Wstaw> Formularz użytkownika. Edytor powinien podać pusty formularz UserForm1.
  • Jeśli nie widzisz pola Properties-UserForm1 w lewym dolnym rogu, kliknij ikonę „Properties Window” - wygląda jak dłoń z palcem wskazującym na białą kartkę.
  • Czwarta pozycja w oknie właściwości to Podpis. W tej chwili podpis będzie UserForm1. Kliknij pole po prawej stronie podpisu w oknie Właściwości i wpisz nowy tytuł formularza. Zadzwoniłem do mojego „Wybierz numer części do przeglądu”. Pozostałe właściwości formularza zostawiłem w stanie domyślnym.
    Tworzenie listy wartości za pomocą formularza użytkownika
  • Kliknij ponownie w dowolnym miejscu formularza użytkownika, a pojawi się przybornik formantów.
  • W przyborniku Kontrolki wybierz literę A. Kliknij i przeciągnij, aby utworzyć pole etykiety u góry formularza. Domyślnie ma podpis Label1. Kliknij ponownie w polu tekstowym, aby edytować podpis. Umieść instrukcje dla użytkownika tutaj: „Wybierz pozycję z poniższej listy i kliknij OK, aby przejrzeć wartości”.
  • Kliknij formularz, ale poza polem etykiety, a zobaczysz ponownie przybornik sterowania. Czwarta pozycja w górnym rzędzie to narzędzie pola kombi. Kliknij to i przeciągnij w formularzu użytkownika, aby utworzyć pole kombi. Tutaj pojawi się lista numerów części. Domyślna nazwa to ComboBox1.
    Właściwości Combobox
  • Okno właściwości będzie teraz pokazywać właściwości ComboBox1. Przewiń w dół właściwości, aż zobaczysz właściwość RowSource. Dla właściwości RowSource wpisz = Sheet2! PartList
  • Możesz teraz przeprowadzić szybki test, aby upewnić się, że wszystko działa poprawnie. Kliknij pasek tytułu swojego formularza użytkownika, aby zaznaczyć cały formularz. Teraz kliknij ikonę „odtwórz” (wygląda jak przycisk odtwarzania na magnetowidzie). Wrócisz do skoroszytu programu Excel i będziesz mieć nasz prosty formularz użytkownika. Po kliknięciu listy rozwijanej z numerem części powinna zostać wyświetlona lista prawidłowych numerów części. Wybierz jeden, a pozostanie w polu kombi. Na razie niezbyt ekscytujące. Kliknij mały X w prawym górnym rogu, aby zamknąć okno.
  • Wróć do edytora Visual Basic. Kliknij formularz użytkownika, aby wyświetlić Control Toolbox. Kliknij narzędzie CommandButton i narysuj przycisk. Zmień podpis na OK za pomocą okna Właściwości - CommandButton1.
  • Narysuj drugi przycisk i oznacz go Anuluj.
  • Prawie skończyliśmy. Powiążmy trochę kodu z przyciskiem Anuluj. Kliknij prawym przyciskiem myszy przycisk Anuluj i wybierz opcję „Wyświetl kod”. Redaktor skonfiguruje instrukcje Sub i End Sub. Pomiędzy nimi wpisz jedną linię kodu:
    UserForm1.Hide
  • Tak, to wszystko, co należy zrobić, aby przypisać kod do przycisku. Aby wrócić do formularza użytkownika, kliknij dwukrotnie wyrazy UserForm1 w oknie projektu. (Nie widzisz okna projektu? Kliknij ikonę Eksploratora projektów, zaraz po lewej stronie ikony Właściwości).
  • Aby zakończyć user form1, zróbmy coś za pomocą przycisku OK. Gdy użytkownik kliknie przycisk OK, chcę, aby wartość z pola listy pojawiła się w komórce A2 Sheet1, a następnie chcę uruchomić makro, które wcześniej napisałem, o nazwie ReviewItem. Kliknij prawym przyciskiem myszy przycisk OK i wybierz Wyświetl kod. Wprowadź ten kod dla Private Sub CommandButton1_Click ():
    Worksheets("Sheet1").Range("A2") = UserForm1.ComboBox1.Value UserForm1.Hide ReviewItem

Gratulacje! Zakończyłeś swój pierwszy formularz użytkownika. Aby formularz pojawił się, uruchom makro, które ma następujący wiersz:

UserForm1.Show

Formularz będzie wyglądał mniej więcej tak:

Ukończony formularz użytkownika

Interesujące artykuły...