Jak korzystać z funkcji InputBox w VBA Excel?

Spisie treści:

Anonim

W programie Excel mamy wiele sposobów na uzyskanie danych wejściowych. Możemy uzyskać dane wejściowe za pomocą argumentów funkcji, użyć komórek i zakresów programu Excel jako obszarów wejściowych, a następnie pobrać z nich wartości. Możesz również użyć formularzy użytkownika, aby uzyskać dane wejściowe od użytkowników. Ale Excel zapewnia jeszcze jeden sposób na uzyskanie danych od użytkowników. Nazywają się InputBox.

InputBox w VBA to rodzaj wstępnie zaprojektowanego formularza użytkownika. Możesz użyć pola wprowadzania, aby uzyskać wiele typów danych wejściowych. Ale dane wejściowe mogą jednocześnie otrzymywać tylko jeden typ danych wejściowych. Excel ma dwa typy pól wejściowych. Jednym z nich jest prosty InputBox, a drugim jest Application InputBox. Pole wejściowe ma wiele argumentów, aby poradzić sobie z różnymi rodzajami danych wejściowych. O niektórych z nich dowiemy się w tym artykule.

Proste pole wprowadzania VBA

To pole wprowadzania może być używane bezpośrednio w VBA, ponieważ jest to funkcja. Ta funkcja monituje formularz użytkownika do użytkownika o wprowadzenie wartości. Składnia funkcji InputBox to:

InputBox(monit, [Tytuł], [Domyślne], [Xpos], [YPos], [Plik Pomocy], [Kontekst])

podpowiedź: To jedyny wymagany argument. Jest to wyrażenie tekstowe wyświetlane jako komunikat w oknie dialogowym. Maksymalna długość monitu to około 1024 znaki, w zależności od szerokości użytych znaków. Jeśli monit składa się z więcej niż jednego wiersza, możesz oddzielić wiersze za pomocą znaku powrotu karetki (Chr(13)), znaku wysuwu wiersza (Chr(10)) lub kombinacji znaków powrotu karetki i wysuwu wiersza ((Chr(13) & (Chr(10)) między każdą linią.

[tytuł]: Jest to opcjonalne. Jest to wyrażenie tekstowe wyświetlane na pasku tytułu okna dialogowego. Jeśli pominiesz tytuł, nazwa aplikacji zostanie umieszczona na pasku tytułu. Jeśli używasz Excela, wyświetli Microsoft Excel.

[domyślny]: To też jest opcjonalne. Jest to wyrażenie tekstowe wyświetlane w polu tekstowym jako odpowiedź domyślna, jeśli nie podano innych danych wejściowych. Jeśli pominiesz domyślne, pole tekstowe jest wyświetlane puste.

[xpos]: Wyrażenie liczbowe określające w twipach odległość poziomą lewej krawędzi okna dialogowego od lewej krawędzi ekranu. Jeśli xpos jest pominięty, okno dialogowe jest wyśrodkowane w poziomie.

[tak]: Wyrażenie liczbowe określające w twipach pionową odległość górnej krawędzi okna dialogowego od górnej części ekranu. Jeśli pominięto ypos, okno dialogowe jest ustawione pionowo w przybliżeniu w jednej trzeciej długości ekranu.

[plik pomocy]: Wyrażenie tekstowe, które identyfikuje plik pomocy, który ma być używany w celu udostępnienia pomocy kontekstowej dla okna dialogowego. Jeśli udostępniono plik pomocy, należy również podać kontekst.

[kontekst]: Wyrażenie liczbowe będące numerem kontekstu Pomocy przypisanym do odpowiedniego tematu Pomocy przez autora Pomocy. Jeśli podano kontekst, należy również dostarczyć plik pomocy.

Dość teorii. Podajmy kilka przykładów, aby zrozumieć, jak używać tej funkcji inputbox.

Przykład 1: Uzyskaj dane wejściowe, aby przywitać się z użytkownikiem

Załóżmy, że chcę, aby moja subskrypcja powitała użytkownika. Poproszę więc o imię użytkownika i przywitam go jako "Hello UserName". W tym celu użyję tego kodu:

Sub InputBoxExample() user_name = InputBox("Podaj swoje imię.") MsgBox ("Witaj " & nazwa_użytkownika & "!") End Sub 

Po uruchomieniu powyższego kodu w VBA zostanie wyświetlony monit o formularz użytkownika z nagłówkiem „Proszę

Wpisz swoje imię i nazwisko.” z polem tekstowym poniżej.

Widać, że okno nosi nazwę „Microsoft Excel”, a pole tekstowe jest puste. Ponieważ nie użyliśmy tych argumentów do ustawienia ich wartości.

Przykład 2: Ustaw Tytuł pola wprowadzania jako Powitanie użytkownika i ustaw wartość domyślną jako Użytkownik

W tym przykładzie ustawimy tytuł jako pozdrowienie użytkownika, aby vba nie mógł wyświetlić nazwy aplikacji, a domyślną wartość ustawimy jako Użytkownik, aby pole tekstowe było puste.

Sub InputBoxExample() user_name = InputBox("Podaj swoje imię.", "Pozdrawiam użytkownika", "Uesr") MsgBox ("Hello " & user_name & "!") End Sub 

Po uruchomieniu powyższego kodu otrzymasz wynik.

Inne argumenty nie są często używane. Są one zasadniczo używane do ustawiania lokalizacji formularza użytkownika na krawędziach programu Excel. Ostatnie dwa argumenty służą do dostarczania użytkownikowi informacji kontekstowych.

Tak, teraz możesz użyć inputbox, aby uzyskać dane wejściowe od użytkowników w programie Excel za pomocą funkcji Inputbox. Tutaj wyjaśniłem Application.InputBox. Proszę to też sprawdzić. Jest potężniejszy niż ta funkcja inputbox.

Mam nadzieję, że wyjaśniłem to wystarczająco i było to dla ciebie pomocne. Jeśli masz jakiekolwiek pytania dotyczące tego artykułu lub jakiegokolwiek innego tematu VBA, daj mi znać w sekcji komentarzy poniżej.

Pierwsze kroki z formularzami użytkownika Excel VBA| Wyjaśnię, jak stworzyć formularz w Excelu, jak korzystać z przybornika VBA, jak obsługiwać dane wejściowe użytkownika i wreszcie jak przechowywać dane wejściowe użytkownika. Przejrzymy te tematy na jednym przykładzie i przewodniku krok po kroku.

Zmienne VBA w Excelu| VBA oznacza Visual Basic for Applications. Jest to język programowania firmy Microsoft. Jest używany z aplikacjami Microsoft Office, takimi jak MSExcel, MS-Word i MS-Access, podczas gdy zmienne VBA są specyficznymi słowami kluczowymi.

Zakres zmiennych Excel VBA| We wszystkich językach programowania mamy specyfikatory dostępu do zmiennych, które definiują, skąd można uzyskać dostęp do zdefiniowanej zmiennej. Excel VBA nie jest wyjątkiem. VBA również ma specyfikatory zakresu.

Argumenty ByRef i ByVal | Gdy argument jest przekazywany jako argument ByRef do innej podrzędnej lub funkcji, wysyłane jest odwołanie do rzeczywistej zmiennej. Wszelkie zmiany wprowadzone w kopii zmiennej zostaną odzwierciedlone w oryginalnym argumencie.

Usuń arkusze bez monitów o potwierdzenie za pomocą VBA w programie Microsoft Excel | Ponieważ usuwasz arkusze za pomocą VBA, wiesz, co robisz. Chcesz powiedzieć programowi Excel, aby nie wyświetlał tego ostrzeżenia i usuwał ten cholerny arkusz.

Dodaj i zapisz nowy skoroszyt za pomocą VBA w programie Microsoft Excel 2016| W tym kodzie najpierw utworzyliśmy odwołanie do obiektu skoroszytu. A następnie zainicjalizowaliśmy go nowym obiektem skoroszytu. Zaletą tego podejścia jest to, że możesz łatwo wykonywać operacje na tym nowym skoroszycie. Jak zapisywanie, zamykanie, usuwanie itp.

Wyświetl komunikat na pasku stanu Excel VBA| Pasek stanu w programie Excel może być używany jako monitor kodu. Gdy twój kod VBA jest długi i wykonujesz kilka zadań za pomocą VBA, często wyłączasz aktualizację ekranu, aby nie widzieć migotania ekranu.

Wyłącz komunikaty ostrzegawcze za pomocą VBA w programie Microsoft Excel 2016| Ten kod nie tylko wyłącza alerty VBA, ale także zwiększa wydajność czasową kodu. Zobaczmy jak.

Popularne artykuły:

50 skrótów Excela, które zwiększą Twoją produktywność | Przyspiesz swoje zadanie. Te 50 skrótów przyspieszy pracę w programie Excel.

Funkcja WYSZUKAJ.PIONOWO w programie Excel | Jest to jedna z najczęściej używanych i popularnych funkcji programu Excel, która służy do wyszukiwania wartości z różnych zakresów i arkuszy.

LICZ.JEŻELI w Excelu 2016 | Policz wartości z warunkami za pomocą tej niesamowitej funkcji. Nie musisz filtrować danych, aby zliczyć określone wartości. Funkcja Countif jest niezbędna do przygotowania deski rozdzielczej.

Jak korzystać z funkcji SUMIF w programie Excel? | To kolejna ważna funkcja deski rozdzielczej. Pomaga to zsumować wartości w określonych warunkach.