VBA kvadrātsaknes funkcija | Kā aprēķināt SQRT, izmantojot SQR VBA?

Excel VBA kvadrātsaknes (SQR) funkcija

VBA mums ir iebūvēta funkcija ar nosaukumu “SQR”, šī funkcija atgriež kvadrātsakni norādītajam skaitlim, kas norādīts ievadā. Kvadrātsaknes funkcijai tās funkcijai nepieciešams tikai viens arguments, ti, skaitlis.

SQRT ir kvadrātsaknes funkcija gan Excel, gan VBA, šīs funkcijas izmantošanas metode ir šāda SQR (skaitlis), un to izmanto, lai aprēķinātu konkrētā skaitļa kvadrātsakni Excel, taču nomenklatūra ir atšķirīga, un tā ir rakstīta kā SQRT salīdzinājumā uz SQR VBA.

Zemāk ir SQR funkcijas sintakse.

Skaitlis: Šim argumentam mums jānorāda skaitlis, kuram mēģinām atrast kvadrātsakni. Numurs var būt tieša numura vai numura maiņa, kas piešķirts mainīgajam, vai skaitlis ar šūnas atsauci ir derīgs.

Šī funkcija ir pieejama gan ar darblapas funkciju, gan ar VBA funkciju, bet darblapā tā ir pieejama kā SQRT.

Kvadrātsaknes piemēri programmā Excel VBA

Šo VBA SQRT Function Excel veidni varat lejupielādēt šeit - VBA SQRT Function Excel veidne

1. piemērs

Tagad mēs centīsimies uzrakstīt kodu, lai atrastu kvadrātsakni skaitlim 64.

Vispirms sāciet vba apakšprogrammu.

Kods:

 Apakš kvadrāts_Root_Piemērs () Beigu apakšgrupa 

Definējiet divus mainīgos kā veselu skaitli, viens ir skaitļa glabāšana, bet otrs - kvadrātsaknes vērtības parādīšana.

Kods:

 Apakš kvadrāts_Root_Example () Dim faktiskais numurs kā vesels skaitlis Dim kvadrāta numurs kā vesels skaitlis Beigas Sub 

Mainīgajam “ActualNumber” piešķiriet skaitļa 64 vērtību.

Kods:

 Apakš kvadrāts_Root_Example () Dim ActualNumber kā vesels skaitlis Dim SquareNumber kā Integer faktiskais numurs = 64 End Sub 

Citam mainīgajam mēs piešķirsim kvadrātsaknes vērtību, ievadīsim mainīgā nosaukumu, ievietosim vienādu dziedāšanas un atvēršanas funkciju SQR.

Vienīgais SQR funkcijas arguments ir “Skaitlis”, jo mainīgajam “ActualNumber” jau ir piešķirts skaitlis 64. SQR funkcijā piegādāsim to pašu mainīgā nosaukumu.

Pēc tam ziņojuma lodziņā parādiet rezultātu. Tagad kvadrātsaknes numurs ir piešķirts mainīgajam. “SquareNumber” ziņojuma lodziņā parāda to pašu mainīgā nosaukumu.

Kods:

 Apakš kvadrāts_Root_Example () Dim faktiskais numurs kā vesels skaitlis Dim kvadrātveida numurs kā veselais skaitlis ActualNumber = 64 kvadrāta numurs = kvadrāts (faktiskais numurs) MsgBox kvadrāta numurs beigu apakšdaļa 

Ok, tas ir viss, ko mēs esam paveikuši ar kodēšanu.

Palaidiet kodu, izmantojot Excel īsinājumtaustiņu F5, un ziņojuma lodziņā skatiet, ko mēs iegūstam.

Skaitļa 64 kvadrātsakne ir 8, ti, 8 * 8 = 64

2. piemērs

Aprēķinot sqrt vērtību VBA, jāpatur prātā vēl viena lieta, ja mainīgā datu tips ir vai nu vesels skaitlis, vai arī garš rezultāts tiek noapaļots līdz tuvākajam skaitlim vai veselam skaitlim.

Piemēram, ja jūs mēģināt atrast kvadrātsakni skaitlim 70, tam nav kvadrātsaknes, bet VBA tas tiek rādīts kā 8 tikai tāpēc, ka 8 ir tuvākā kvadrātsaknes veselā skaitļa vērtība.

Apskatiet zemāk esošo kodu.

Kods:

 Apakš kvadrāts_Root_Example1 () Dim faktiskais numurs kā vesels skaitlis Dim kvadrātveida numurs kā veselais skaitlis ActualNumber = 70 kvadrātveida numurs = kvadrāts (faktiskais numurs) MsgBox kvadrāta numurs beigu apakšdaļa 

Faktiskais kvadrātsaknes skaitļa rezultāts 70 ir 8.3666, bet ar VBA tas noapaļos līdz tuvākajai veselā skaitļa vērtībai 8.

Viena lieta, ko mēs varam darīt, lai novērstu šo kļūdu, ir jāmaina mainīgā “SquareNumber” datu tips uz “Double”.

Kods:

 Apakš kvadrāts_Root_Example1 () Dim ActualNumber kā vesels skaitlis Dim SquareNumber kā Double ActualNumber = 70 SquareNumber = Sqr (ActualNumber) MsgBox SquareNumber End Sub 

Tagad palaidiet kodu manuāli vai caur F5 taustiņu un skatiet rezultātu.

Kā redzat, rezultāts tagad ir precīzs, ti, 8.366602, tas ir tāpēc, ka datu tips mums ir piešķirts mainīgajam “SquareNumber”

Atceramās lietas

  • VBA, lai atrastu skaitļa formulas kvadrātsakni, ir SQR, un darblapā tā ir SQRT.
  • Skaitlim, ko piegādājam funkcijai SQR, jābūt pozitīvam skaitlim, pretējā gadījumā mēs saņemsim #NUM! kļūda.

$config[zx-auto] not found$config[zx-overlay] not found