Jak stworzyć formularz w Excelu który sprawdzi numeru NIP

By barutowicz|04/07/2018|Excel, VBA|0 komentarze

Jak stworzyć formularz w Excelu który sprawdzi numeru NIP

W tym artykule pokaże krok po kroku jak stworzyć formularz, następnie zostanie on sformatowany i oprogramowany. Kod który zostanie użyty jest dostępny do pobrania.

Tworzenie formularza

Na wstążce wchodzimy w kartę „Deweloper” następnie wybieramy „Visual Basic”.

Jak uruchomić visual basic w excelu z zakładki deweloper

Można równe użyć skrótu Alt+F11 aby otworzyć nasze środowisku w którym będziemy pracować.

Po uruchomieni Visual Basic musimy dodać nasz formularz do projektu. W celu dodania nowego formularz klikamy prawym przyciskiem na katalog „Forms” a następnie „Insert” i wybieramy „UserForm”

Jak stworzyć formularz w Excelu który sprawdzi numeru NIP -Jak wstawić UserForm do naszego projektu

Do naszego formularza „TextBox”, „Label” oraz „CommandButton” wszystkie te elementy znajdziemy na „Toolbox” który powinien pojawić się wraz z dodaniem naszego formularza. Jeżeli jednak nie widzimy „Toolbox” możemy go aktywować z menu

Jak stworzyć formularz w Excelu który sprawdzi numeru NIP - Jak uruchomić ToolBox w VBA Excel

Po dodaniu naszych elementów na formularz powinien on wyglądać mniej więcej tak:

Jak stworzyć formularz w Excelu który sprawdzi numeru NIP - Tworzenie formularza VBA excel

Aby kod który będzie prezentowa poniżej zadziałał należy ustawić takie samo nazewnictwo naszych elementów. Klikając prawym na dany element i wybierając z listy „Properties”.

Jak stworzyć formularz w Excelu który sprawdzi numeru NIP - Jak uruchomić ustawienia

Przechodzimy do ustawień naszego elementu.Jedyną wymaganą zmiana jaką musimy wprowadzić dotyczy pola „(Name)”. W tym wypadku wpiszemy „TextBox_Nip”

Jak stworzyć formularz w Excelu który sprawdzi numeru NIP - Ustawienia kontrolek VBA

Kolory, wymiary, i inne formatowanie jest opcjonalne.

Czynność tą powtarzamy również dla innych elementów kolejne nazwy to:

  • TextBox_Suma_Kontrolna
  • TextBox_Wynik

Nazwy dla naszych przycisków

  • CommandButton_Wyczysc
  • CommandButton_Sprawdz

Zmieńmy również nazwę naszego formularz

  • SprawdzNip

Ustawiamy nasz formularz aby z automatu został uruchomiony podczas otwierania pliku.Aby to zrobić klikamy dwa razy na „Ten_skoroszyt”

Jak stworzyć formularz w Excelu który sprawdzi numeru NIP - Ten_skoroszyt

Następnie przepisujemy poniższy kod:

Private Sub Workbook_Open()
SprawdzNip.Show
End Sub

Kolejnym krokiem będzie zaprogramowanie naszego przyciski „Sprawdź”. Klikamy w niego dwukrotnie i przechodzimy do zaprogramowania działania.

Private Sub CommandButton_Sprawdz_Click()

Dim LiczbaKontrolna, Suma As Integer

If Not (IsNumeric(TextBox_Nip.Value) Or IsEmpty(TextBox_Nip.Value)) Then

MsgBox "Proszę wpisać tylko liczby, Pole nie może być puste", , TextBox_Nip.Name

ElseIf Len(TextBox_Nip.Value) <> 10 Then

TextBox_Wynik.Value = "za mało / za dużo znakow"

Else: LiczbaKontrolna = CInt(Mid(TextBox_Nip.Value, 10, 1))

Suma = (CInt(Mid(TextBox_Nip.Value, 1, 1)) * 6 + CInt(Mid(TextBox_Nip.Value, 2, 1)) * 5 + CInt(Mid(TextBox_Nip.Value, 3, 1)) * 7 + CInt(Mid(TextBox_Nip.Value, 4, 1)) * 2 + CInt(Mid(TextBox_Nip.Value, 5, 1)) * 3 + CInt(Mid(TextBox_Nip.Value, 6, 1)) * 4 + CInt(Mid(TextBox_Nip.Value, 7, 1)) * 5 + CInt(Mid(TextBox_Nip.Value, 8, 1)) * 6 + CInt(Mid(TextBox_Nip.Value, 9, 1)) * 7) Mod 11

If Suma = LiczbaKontrolna Then

TextBox_Wynik.Value = "Dobry NIP"

TextBox_Suma_Kontrolna.Value = "Modulo: " & Suma & " Liczba kontrolna: " & LiczbaKontrolna

Else: TextBox_Wynik.Value = "Zły NIP"

TextBox_Suma_Kontrolna.Value = "Modulo: " & Suma & " Liczba kontrolna: " & LiczbaKontrolna

End If

End If

End Sub

Oraz zaprogramowanie przycisku „Wyczyść” poniżej kod który należy wkleić:

Private Sub CommandButton_Wyczysc_Click()

TextBox_Nip.Value = Null

TextBox_Suma_Kontrolna.Value = Null

TextBox_Wynik.Value = Null

End Sub

Test formularza

Aby przetestować czy nasz program działa prawidłowo naciskamy „F5”. Jeżeli wszystko zostało wykonane zgodnie z instrukcją powyżej, wszystkie nazwy się zgadzają zostanie uruchomiony formularz tak jak na poniższym zdjęciu.

Jak stworzyć formularz w Excelu który sprawdzi numeru NIP - Wygląd formularza do weryfikacji numeru NIP

Program sprawdza w pierwszej kolejności czy podany został wpisany ciąg znaków składający się tylko z cyfr oraz czy pole nie jest puste w przypadku błędu zostaje wyświetlony komunikat:

Jak stworzyć formularz w Excelu który sprawdzi numeru NIP - Nieprawidłowy numer NIP MsgBox zbyt mała liczba zanków

Następnie sprawdzana jest ilość znaków wpisana jeżeli ilość jest inna niż 10 użytkownik zostanie o tym poinformowany w polu „Wynik”

Jak stworzyć formularz w Excelu który sprawdzi numeru NIP - TextBox z informacją o złym numerze NIP

W przypadku gdy podany numer NIP jest prawidłowy reszta z dzielenia przez 11 dla sumy kontrolnej jest równa liczbie kontrolnej to użytkownik również zostanie o tym poinformowany

Jak stworzyć formularz w Excelu który sprawdzi numeru NIP - Formularz przedstawiający wygląd formularza

Jako zadanie napisz kod który odpowiada za zmianę koloru w polu tekstowym.

Jeżeli NIP jest prawidłowy kolor ma być zielony a jeżeli podany numer jest zły to kolor czerwony. Rozwiązanie umieść w komentarzu pod tym wpisem

Zapraszam do zapoznania się również z wpisem na temat weryfikacji numeru PESEL tutaj

Udostępnij znajomym:

Dodaj komentarz