VBA Square Root

Funkcja Excel VBA Square Root (SQR)

W VBA mamy wbudowaną funkcję o nazwie „SQR”, ta funkcja zwraca pierwiastek kwadratowy z podanej liczby podanej na wejściu. Funkcja Square Root wymaga tylko jednego argumentu dla swojej funkcji, tj. Liczby.

SQRT jest funkcją pierwiastka kwadratowego zarówno w programie Excel, jak i VBA, metoda korzystania z tej funkcji jest następująca SQR (liczba) i służy do obliczania pierwiastka kwadratowego z danej liczby w programie Excel, jednak nomenklatura jest inna i jest zapisywana jako SQRT w porównaniu do SQR w VBA.

Poniżej znajduje się składnia funkcji SQR.

Liczba: dla tego argumentu musimy podać liczbę, dla której próbujemy znaleźć pierwiastek kwadratowy. Liczba może być bezpośrednią dostawą liczby lub liczby przypisanej do zmiennej albo liczba z odwołaniem do komórki jest ważna.

Ta funkcja jest dostępna zarówno z funkcją arkusza, jak i funkcją VBA, ale w arkuszu jest dostępna jako SQRT.

Przykłady Square Root w Excel VBA

Możesz pobrać ten szablon programu Excel z funkcją VBA SQRT tutaj - Szablon programu Excel z funkcją VBA SQRT

Przykład 1

Teraz spróbujemy napisać kod, aby znaleźć pierwiastek kwadratowy dla liczby 64.

Najpierw uruchom podprogram vba.

Kod:

 Sub Square_Root_Example () End Sub 

Zdefiniuj dwie zmienne jako liczby całkowite, jedna służy do przechowywania liczby, a druga ma pokazywać wynik wartości pierwiastka kwadratowego.

Kod:

 Sub Square_Root_Example () Dim ActualNumber As Integer Dim SquareNumber As Integer End Sub 

Zmiennej „ActualNumber” przypisz wartość 64.

Kod:

 Sub Square_Root_Example () Dim ActualNumber As Integer Dim SquareNumber As Integer ActualNumber = 64 End Sub 

W przypadku innej zmiennej przypiszemy pierwiastek kwadratowy, wpiszemy nazwę zmiennej, wstawimy równość i otworzymy funkcję SQR.

Jedynym argumentem funkcji SQR jest „Number”, ponieważ przypisaliśmy już numer 64 do zmiennej „ActualNumber”, podajmy tę samą nazwę zmiennej w funkcji SQR.

Następnie pokaż wynik w oknie komunikatu. Teraz pierwiastek kwadratowy jest przypisany do zmiennej „SquareNumber” i wyświetla tę samą nazwę zmiennej w oknie komunikatu.

Kod:

 Sub Square_Root_Example () Dim ActualNumber As Integer Dim SquareNumber As Integer ActualNumber = 64 SquareNumber = Sqr (ActualNumber) MsgBox SquareNumber End Sub 

Ok, to wszystko, co skończyliśmy z kodowaniem.

Uruchom kod za pomocą klawisza skrótu F5 programu Excel i zobacz, co otrzymamy w oknie komunikatu.

Pierwiastek kwadratowy liczby 64 to 8, czyli 8 * 8 = 64

Przykład nr 2

Jeszcze jedną rzeczą, o której musimy pamiętać podczas obliczania sqrt w VBA, jest sytuacja, gdy typ danych zmiennej jest liczbą całkowitą lub długą, a wynik jest zaokrąglany do najbliższej wartości całkowitej lub całkowitej.

Na przykład, jeśli próbujesz znaleźć pierwiastek kwadratowy dla liczby 70, nie ma dla tego pierwiastka kwadratowego, ale w VBA wyświetla się jako 8 tylko dlatego, że 8 jest najbliższą wartością całkowitą pierwiastka kwadratowego.

Spójrz na poniższy kod.

Kod:

 Sub Square_Root_Example1 () Dim ActualNumber As Integer Dim SquareNumber As Integer ActualNumber = 70 SquareNumber = Sqr (ActualNumber) MsgBox SquareNumber End Sub 

Rzeczywisty wynik liczby pierwiastkowej dla 70 to 8,3666, ale w przypadku VBA zaokrągli się do najbliższej wartości całkowitej 8.

Jedyną rzeczą, jaką możemy zrobić, aby naprawić ten błąd, jest zmiana typu danych zmiennej „SquareNumber” na „Double”.

Kod:

 Sub Square_Root_Example1 () Dim ActualNumber As Integer Dim SquareNumber As Double ActualNumber = 70 SquareNumber = Sqr (ActualNumber) MsgBox SquareNumber End Sub 

Teraz uruchom kod ręcznie lub za pomocą klawisza F5 i zobacz wynik.

Jak widać wynik jest teraz dokładny, tj. 8,366602 wynika to z typu danych, które przypisaliśmy do zmiennej „SquareNumber”

Rzeczy do zapamiętania

  • W języku VBA, aby znaleźć pierwiastek kwadratowy wzoru liczbowego, jest to SQR, aw arkuszu kalkulacyjnym to SQRT.
  • Liczba, którą dostarczamy do funkcji SQR, powinna być liczbą dodatnią, w przeciwnym razie otrzymamy #NUM! błąd.