Zawartość
Poznanie funkcji „Input Box” w VBA for Excel to pierwszy krok w tworzeniu programów za pomocą tego narzędzia. „Pole wejściowe” to łatwe wprowadzenie do ręcznego pisania programów VBA, ponieważ wymaga tylko jednego argumentu, ale pełni istotną funkcję odbierania danych wejściowych od użytkownika. Rozważ także zapoznanie się z funkcją „MsgBox”, ponieważ jej rola, polegająca na pokazywaniu użytkownikom wiadomości, stanowi uzupełnienie „pola wprowadzania”.
Okna dialogowe pozwalają użytkownikom wiedzieć, co się dzieje (Stockbyte / Stockbyte / Getty Images)
Cel
Funkcja „Pole wejściowe” monituje o wprowadzenie danych i odebranie ich. Na przykład „pole wejściowe” może monitować użytkownika o wprowadzenie wieku osoby, aby zapisać go w tabeli o nazwie „Lista urodzin” w arkuszu programu Excel.
Argumenty
„Pole wejściowe” pobiera kilka argumentów, ale wymagany jest tylko jeden z nich: tekst, który monituje użytkownika o wprowadzenie danych. Opcjonalne argumenty obejmują tytuł okna dialogowego i domyślny argument. Możesz umieścić pole w określonej pozycji, używając argumentów „Xpos” i „Ypos”.
Zwróć wartość
„InputBox” zwraca ciąg tekstowy, co zwykle oznacza, że musisz zadeklarować zmienną, aby go otrzymać. To stwierdzenie może przyjąć jedną z dwóch form. Pierwszy nie określa typu wartości (na przykład można wpisać „Zwróć wartość zwrotną” lub wskazać typ zmiennej z deklaracją typu „Dim Value Return String”). Ogólnie zalecamy używanie bardziej specyficznego typu, aby VBA mógł przechwytywać błędy związane z typem, na przykład podczas próby umieszczenia liczby w zmiennej „String”.
Przykładowy program
Wypróbuj przykładowy program, który integruje „pole wejściowe” z programem Excel. Kliknij przycisk „Visual Basic” na karcie Excel Developer, aby otworzyć środowisko programowania VBA. Skopiuj następujący kod:
Public Sub GetEmailAdr () Dim str_email As String (InStr (str_email, "@") = 0) str_email = InputBox ("Podaj poprawny adres e-mail.") Zakres pętli ("A1") = str_email End Sub
Wklej kod do okna i uruchom program, naciskając „F5”. Ten program wyświetli monit o wprowadzenie danych przez użytkownika, sprawdzenie go w prosty sposób i wstawienie wartości zwracanej do komórki, jeśli jest poprawna. W przeciwnym razie program poprosi użytkownika o inną wartość.
Alternatywy i zalety
„Pole wejściowe” to jeden z kilku sposobów na wprowadzenie danych użytkownika do programu Excel. Możesz także użyć komórki arkusza lub kontrolki „Textbox”, aby ją przechwycić. Ponieważ pole wprowadzania obsługuje wprowadzanie tekstu, nie jest to najlepsza opcja dla pytań „Tak / Nie”. Jednak jedną z zalet tej funkcji jest to, że nie trzeba tworzyć specjalnego formularza, aby go użyć, w przeciwieństwie do innych formantów VBA. Na przykład kontrolka Pole listy wymaga formularza użytkownika, który należy utworzyć, lub arkusza, w którym kontrolka zajmie miejsce. „Pole wejściowe” nie zajmie miejsca: pojawi się, otrzyma dane wejściowe od użytkownika i zniknie, co jest bardzo dyskretne.