Fungsi VBA Square Root - Bagaimana Mengira SQRT menggunakan SQR di VBA?

Fungsi Excel VBA Square Root (SQR)

Di VBA kita memiliki fungsi bawaan yang disebut "SQR", fungsi ini mengembalikan akar kuadrat untuk bilangan yang diberikan dalam input. Fungsi Square Root hanya memerlukan satu argumen untuk fungsinya iaitu Number.

SQRT adalah fungsi kuasa dua di kedua excel dan VBA. Kaedah untuk menggunakan fungsi ini adalah seperti berikut SQR (number) dan digunakan untuk mengira punca kuasa dua nombor dalam excel; namun, tatanama berbeza, dan ditulis sebagai SQRT berbanding dengan SQR di VBA.

Berikut adalah sintaks fungsi SQR.

Nombor: Untuk hujah ini, kita perlu memberikan nombor yang kita cari untuk mencari punca kuasa dua. Nombor itu boleh menjadi pembekalan langsung nombor atau nombor yang diberikan kepada pemboleh ubah, atau nombor dengan rujukan sel valid.

Fungsi ini tersedia dengan kedua fungsi lembaran kerja dan juga fungsi VBA, tetapi dalam lembaran kerja, ia tersedia sebagai SQRT.

Contoh Square Root dalam Excel VBA

Contoh # 1

Sekarang kita akan cuba menulis kod untuk mencari punca kuasa dua bagi nombor 64.

Pertama, mulakan subrutin VBA.

Kod:

Sub Square_Root_Contoh () Akhir Sub

Tentukan dua pemboleh ubah sebagai Integer, satu adalah untuk menyimpan nombor, dan yang lain adalah untuk menunjukkan hasil dari nilai punca kuasa dua.

Kod:

Sub Square_Root_Contoh () Dim Sebenar Nombor Sebagai Integer Dim SquareNumber Sebagai Integer End Sub

Untuk pemboleh ubah "ActualNumber", berikan nilai nombor 64.

Kod:

Sub Square_Root_Contoh () Dim SebenarNumber Sebagai Integer Dim SquareNumber Sebagai Integer ActualNumber = 64 End Sub

Untuk pemboleh ubah lain, kami akan menetapkan nilai akar kuadrat, masukkan nama pemboleh ubah, meletakkan sing sama, dan membuka fungsi SQR.

Satu-satunya argumen fungsi SQR adalah "Number" kerana kita telah memberikan nombor 64 kepada pemboleh ubah "ActualNumber" mari kita berikan nama pemboleh ubah yang sama dalam fungsi SQR.

Seterusnya, tunjukkan hasilnya di kotak mesej. Sekarang nombor punca kuasa dua diberikan kepada pemboleh ubah "SquareNumber" menunjukkan nama pemboleh ubah yang sama ke kotak mesej.

Kod:

Sub Square_Root_Contoh () Dim SebenarNumber Sebagai Integer Dim SquareNumber Sebagai Integer ActualNumber = 64 SquareNumber = Sqr (ActualNumber) MsgBox SquareNumber End Sub

Ok, itu sahaja yang kita selesai dengan pengekodan.

Jalankan kod menggunakan kunci pintasan excel F5 dan lihat apa yang kita dapat di kotak mesej.

Square Root nombor 64 ialah 8 iaitu 8 * 8 = 64

Contoh # 2

Satu perkara lagi yang perlu kita ingat semasa mengira sqrt dalam VBA ialah apabila jenis data pemboleh ubah sama ada bilangan bulat atau panjang, hasilnya dibundarkan ke bilangan bulat atau nombor bulat terdekat.

Contohnya, jika anda ingin mencari punca kuasa dua untuk nombor 70, tidak ada punca kuasa dua untuk ini, tetapi dalam VBA, ia hanya menunjukkan 8 kerana 8 adalah nilai integer root square terdekat.

Lihat kod di bawah.

Kod:

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

Hasil nombor punca kuasa dua sebenar untuk 70 adalah 8.3666, tetapi dengan VBA, ia akan dibundarkan ke nilai bilangan bulat terdekat 8.

Satu perkara yang dapat kita lakukan untuk memperbaiki kesalahan ini adalah kita perlu mengubah jenis data pemboleh ubah "SquareNumber" menjadi "Double."

Kod:

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

Sekarang jalankan kod secara manual atau melalui kekunci F5 dan lihat hasilnya.

Seperti yang anda lihat, hasilnya tepat sekarang, iaitu 8.366602. Ini kerana jenis data yang telah kami tetapkan pada pemboleh ubah "SquareNumber."

Perkara yang Perlu Diingat

  • Dalam VBA untuk mencari punca kuasa dua formula nombor adalah SQR, dan dalam lembaran kerja, itu adalah SQRT.
  • Nombor yang kami berikan untuk fungsi SQR mestilah nombor positif, jika tidak, kami akan mendapat #NUM! kesilapan.

Artikel menarik...