จำนวนเต็มเป็นชนิดข้อมูลใน VBA ซึ่งกำหนดให้กับตัวแปรใด ๆ เพื่อเก็บค่าจำนวนเต็มข้อ จำกัด หรือวงเล็บสำหรับจำนวนของตัวแปรจำนวนเต็มสามารถถือได้นั้นคล้ายคลึงกันใน VBA กับภาษาอื่นตัวแปรใด ๆ จะถูกกำหนดเป็นจำนวนเต็ม ตัวแปรโดยใช้คำสั่ง DIM หรือคำสำคัญใน VBA
จำนวนเต็ม Excel VBA
ชนิดข้อมูลมีความสำคัญมากในภาษาการเข้ารหัสใด ๆ เนื่องจากการประกาศตัวแปรทั้งหมดควรตามด้วยประเภทข้อมูลที่กำหนดให้กับตัวแปรเหล่านั้น เรามีข้อมูลหลายประเภทให้ใช้งานและข้อมูลแต่ละประเภทมีข้อดีและข้อเสียที่เกี่ยวข้อง เมื่อเราประกาศตัวแปรสิ่งสำคัญคือต้องทราบรายละเอียดเกี่ยวกับชนิดข้อมูลนั้น ๆ นี่คือบทความเฉพาะสำหรับประเภทข้อมูล "จำนวนเต็ม" ใน VBA เราจะแสดงภาพที่สมบูรณ์ของประเภทข้อมูล "จำนวนเต็ม"
ชนิดข้อมูลจำนวนเต็มคืออะไร?
จำนวนเต็มคือจำนวนเต็มซึ่งอาจเป็นจำนวนบวกลบและศูนย์ แต่ไม่ใช่จำนวนเศษส่วน ในบริบท VBA“ จำนวนเต็ม” คือประเภทข้อมูลที่เรากำหนดให้กับตัวแปร เป็นประเภทข้อมูลตัวเลขที่สามารถเก็บตัวเลขทั้งหมดได้โดยไม่มีตำแหน่งทศนิยม ประเภทข้อมูลจำนวนเต็ม 2 ไบต์ซึ่งเป็นครึ่งหนึ่งของประเภทข้อมูล VBA LONG คือ 4 ไบต์
ตัวอย่างประเภทข้อมูลจำนวนเต็ม Excel VBA
ด้านล่างนี้คือตัวอย่างประเภทข้อมูลจำนวนเต็ม VBA
คุณสามารถดาวน์โหลดเทมเพลตชนิดข้อมูลจำนวนเต็ม VBA ได้ที่นี่ - เทมเพลตประเภทข้อมูลจำนวนเต็ม VBAตัวอย่าง # 1
เมื่อเราประกาศตัวแปรจำเป็นต้องกำหนดประเภทข้อมูลให้กับตัวแปรและจำนวนเต็มหนึ่งในนั้นซึ่งผู้ใช้ทุกคนมักใช้ตามข้อกำหนด
อย่างที่บอกเลขจำนวนเต็มถือได้เฉพาะจำนวนเต็มเท่านั้นไม่ใช่ตัวเลขเศษส่วน ทำตามขั้นตอนด้านล่างเพื่อดูตัวอย่างประเภทข้อมูลจำนวนเต็ม VBA
ขั้นตอนที่ 1:ประกาศตัวแปรเป็นจำนวนเต็ม
รหัส:
Sub Integer_Example () Dim k As Integer End Sub
ขั้นตอนที่ 2:กำหนดค่า 500 ให้กับตัวแปร“ k”
รหัส:
Sub Integer_Example1 () Dim k As Integer k = 500 End Sub
ขั้นตอนที่ 3:แสดงค่าในกล่องข้อความ VBA
รหัส:
Sub Integer_Example1 () Dim k As Integer k = 500 MsgBox k End Sub
เมื่อเรารันโค้ดโดยใช้ปุ่ม F5 หรือด้วยตนเองเราจะเห็น 500 ในกล่องข้อความ
ตัวอย่าง # 2
ตอนนี้ฉันจะกำหนดค่าเป็น -500 ให้กับตัวแปร“ k”
รหัส:
Sub Integer_Example2 () Dim k As Integer k = -500 MsgBox k End Sub
เรียกใช้รหัสนี้ด้วยตนเองหรือกด F5 จากนั้นจะแสดงค่า -500 ในกล่องข้อความด้วย
ตัวอย่าง # 3
อย่างที่ฉันบอกประเภทข้อมูล VBA Integer สามารถเก็บเฉพาะจำนวนเต็มไม่ใช่เศษส่วนเช่น 25.655 หรือ 47.145
อย่างไรก็ตามฉันจะพยายามกำหนดเลขเศษส่วนให้กับประเภทข้อมูล VBA Integer สำหรับตัวอย่างดูโค้ดด้านล่าง
รหัส:
Sub Integer_Example3 () Dim k As Integer k = 85.456 MsgBox k End Sub
ฉันได้กำหนด 85.456 ให้กับตัวแปร“ k” ฉันจะเรียกใช้รหัส VBA นี้เพื่อดูว่าผลลัพธ์เป็นอย่างไร
- มันส่งคืนผลลัพธ์เป็น 85 แม้ว่าฉันจะกำหนดค่าของเลขเศษส่วนแล้วก็ตาม นี่เป็นเพราะ VBA ปัดเศษเลขเศษส่วนให้เป็นจำนวนเต็มที่ใกล้เคียงที่สุด
- จำนวนเศษทั้งหมดที่น้อยกว่า 0.5 จะถูกปัดเศษลงเป็นจำนวนเต็มที่ใกล้เคียงที่สุด ตัวอย่างเช่น 2.456 = 2, 45.475 = 45
- จำนวนเศษส่วนทั้งหมดที่มากกว่า 0.5 จะถูกปัดขึ้นเป็นจำนวนเต็มที่ใกล้เคียงที่สุด ตัวอย่างเช่น 10.56 = 11, 14.789 = 15
หากต้องการดูจำนวนเต็ม roundup อีกครั้งให้ค่า“ k” เป็น 85.58
รหัส:
Sub Integer_Example3 () Dim k As Integer k = 85.58 MsgBox k End Sub
เมื่อฉันเรียกใช้รหัสนี้โดยใช้ปุ่ม F5 หรือด้วยตนเองมันจะส่งคืน 86 เนื่องจากสิ่งที่มากกว่า 0.5 จะถูกปัดเศษเป็นจำนวนเต็มถัดไป
ข้อ จำกัด ของประเภทข้อมูลจำนวนเต็มใน Excel VBA
ข้อผิดพลาดล้น:ชนิดข้อมูลจำนวนเต็มควรทำงานได้ดีตราบเท่าที่ค่าที่กำหนดอยู่ระหว่าง -32768 ถึง 32767 ช่วงเวลาที่ข้ามขีด จำกัด ในด้านใดด้านหนึ่งจะทำให้คุณเกิดข้อผิดพลาด
สำหรับตัวอย่างดูโค้ดด้านล่าง
รหัส:
Sub Integer_Example4 () Dim k As Integer k = 40000 MsgBox k End Sub
ฉันได้กำหนดค่า 40000 ให้กับตัวแปร“ k”
เนื่องจากฉันมีความรู้ครบถ้วนเกี่ยวกับชนิดข้อมูลจำนวนเต็มแน่นอนฉันรู้ว่ามันใช้ไม่ได้เพราะชนิดข้อมูลจำนวนเต็มไม่สามารถเก็บค่าได้มากกว่า 32767
ลองเรียกใช้รหัสด้วยตนเองหรือผ่านปุ่ม F5 และดูว่าเกิดอะไรขึ้น
อ๊ะ !!!
ฉันได้รับข้อผิดพลาดเป็น“ Overflow” เนื่องจากประเภทข้อมูลจำนวนเต็มไม่สามารถเก็บค่าอะไรได้มากกว่า 32767 สำหรับจำนวนบวกและ -32768 สำหรับจำนวนลบ
ข้อผิดพลาดประเภทไม่ตรงกัน:ข้อมูลจำนวนเต็มสามารถเก็บค่าตัวเลขระหว่าง -32768 ถึง 32767 เท่านั้นหากตัวเลขใด ๆ ที่กำหนดไว้มากกว่าตัวเลขเหล่านี้จะแสดงข้อผิดพลาด Overflow
ตอนนี้ฉันจะพยายามกำหนดค่าข้อความหรือสตริงให้ ในโค้ดตัวอย่างด้านล่างนี้ฉันได้กำหนดค่าเป็น“ สวัสดี”
รหัส:
Sub Integer_Example4 () Dim k As Integer k = "Hello" MsgBox k End Sub
ฉันจะเรียกใช้รหัสนี้ผ่านตัวเลือกการรันหรือด้วยตนเองและดูว่าเกิดอะไรขึ้น
แสดงข้อผิดพลาดเป็น“ Type mismatch” เนื่องจากเราไม่สามารถกำหนดค่าข้อความให้กับตัวแปร“ ชนิดข้อมูลจำนวนเต็ม”