คำถามและคำตอบในการสัมภาษณ์ VBA 22 อันดับแรก (2025)

ต่อไปนี้เป็นคำถามและคำตอบในการสัมภาษณ์ VBA สำหรับผู้สมัครที่มีประสบการณ์และใหม่กว่าเพื่อให้ได้งานในฝัน

 

คำถามและคำตอบสัมภาษณ์ Excel VBA สำหรับนักศึกษาใหม่

1) อธิบายว่า VBA หรือ Visual Basic สำหรับแอปพลิเคชันคืออะไร

VBA ย่อมาจาก Visual Basic สำหรับแอปพลิเคชัน มันเป็นภาษาโปรแกรมที่ขับเคลื่อนด้วยเหตุการณ์ที่พัฒนาโดย Microsoft- ส่วนใหญ่จะใช้กับ Microsoft แอปพลิเคชัน office เช่น MS-word, MS-Access และ MS-Excel


2) พูดถึงตำแหน่งที่คุณสามารถเขียนโปรแกรม VBA สำหรับ Macro ได้หรือไม่

Module คือตำแหน่งที่คุณสามารถเขียนโปรแกรม VBA สำหรับ Macro เพื่อแทรกการนำทาง Module ไปที่ Insert ->โมดูล

👉 ดาวน์โหลดไฟล์ PDF ฟรี: คำถามและคำตอบในการสัมภาษณ์ VBA


3) พูดถึงรูปแบบความคิดเห็นที่ใช้ใน VBA คืออะไร?

ความคิดเห็นใช้เพื่อบันทึกตรรกะของโปรแกรมและข้อมูลผู้ใช้ซึ่งโปรแกรมเมอร์คนอื่นสามารถทำงานได้อย่างราบรื่นบนโค้ดเดียวกันในอนาคต ส่วนใหญ่มีสองวิธีใน VBA เพื่อแสดงความคิดเห็น

  • ข้อความใดๆ ที่ขึ้นต้นด้วยเครื่องหมายคำพูดเดียวจะถือเป็นความคิดเห็น
  • หรือคุณสามารถใช้คำสั่ง REM แทนเครื่องหมายคำพูดเดี่ยว (')

4) ใน VBA เราจะประกาศตัวแปรและค่าคงที่ได้อย่างไร?

ใน VBA สามารถประกาศตัวแปรด้วยคีย์เวิร์ด “DIM” ในขณะที่ค่าคงที่ถูกประกาศด้วยคีย์เวิร์ด “Const”


5) ประเภทข้อมูลใน VBA คืออะไร?

ชนิดข้อมูลใน VBA แบ่งออกเป็นสองประเภท

ชนิดข้อมูลตัวเลข ชนิดข้อมูลที่ไม่ใช่ตัวเลข
byte เชือก (ความยาวคงที่)
จำนวนเต็ม สตริง (ความยาวผันแปร)
นาน วันที่
เดียว บูลีน
Double วัตถุ
เงินตรา ตัวแปร (ตัวเลข)
ทศนิยม ตัวแปร (ข้อความ)

คำถามสัมภาษณ์ VBA


6) อธิบายว่า ADO, ODBC และ OLEDB คืออะไร

ADO: ActiveX Data Objects หรือ ADO เป็นเฟรมเวิร์กการเข้าถึงข้อมูลสากลที่ครอบคลุมฟังก์ชันการทำงานของ DAO

ODBC: Open Database Connectivity หรือ ODBC เป็นเทคโนโลยีที่ช่วยให้แอปพลิเคชันไคลเอนต์ฐานข้อมูลเชื่อมต่อกับฐานข้อมูลภายนอก

OLEDB: เป็นอินเทอร์เฟซการเขียนโปรแกรมระดับต่ำที่ออกแบบมาเพื่อเข้าถึงการเชื่อมโยงและการฝังวัตถุการเข้าถึงข้อมูลที่หลากหลาย (OLE)


7) อธิบายเกี่ยวกับตัวชี้ฟังก์ชันใน VBA หรือไม่

รางวัล VBA (ข้อมูลพื้นฐานเชิงภาพ) มีแอปพลิเคชันที่ยืดหยุ่น แต่มีข้อจำกัดเกี่ยวกับตัวชี้ฟังก์ชันใน VBA Windows API มีการรองรับพอยน์เตอร์ฟังก์ชันไม่เพียงพอ เนื่องจากมีความสามารถในการใช้ฟังก์ชัน แต่ไม่รองรับฟังก์ชันในการเรียกกลับฟังก์ชัน มีการรองรับการโทรในตัว แต่ไม่รองรับการโทรกลับ


8) อธิบายว่า "การนับอ้างอิง" ใน VBA ทำอย่างไร

ใน VBA ในไม่ช้าตัวแปรก็จะอยู่นอกขอบเขต ตัวนับการอ้างอิงบนวัตถุอ้างอิงจะลดลง เมื่อคุณกำหนดการอ้างอิงวัตถุให้กับตัวแปรอื่น ตัวนับการอ้างอิงจะเพิ่มขึ้น แม้ว่าเมื่อจำนวนการอ้างอิงของคุณถึงศูนย์ กิจกรรมก็จะยุติลง


9) คุณจะลดตัวนับการอ้างอิงอย่างชัดเจนได้อย่างไร?

หากต้องการลดตัวนับการอ้างอิงอย่างชัดเจน คุณต้องตั้งค่าตัวแปรเป็น "ไม่มีอะไร"


10) อธิบายว่าวัตถุ COM (Component Object Model) ใน VBA คืออะไร

อ็อบเจ็กต์ COM โดยปกติจะเป็นไฟล์ .dll และเป็นโปรแกรมปฏิบัติการที่คอมไพล์แล้ว


คำถามและคำตอบสัมภาษณ์ Excel VBA สำหรับผู้มีประสบการณ์

11) อธิบายว่าคุณจะกดหมายเลขโทรศัพท์ผ่าน VBA ได้อย่างไร

ในการโทรหาหมายเลขโทรศัพท์ผ่าน VBA คุณต้องทำตามขั้นตอนต่อไปนี้

  • คำสั่งเชลล์ใน VBA สามารถใช้เพื่อเริ่มตัวหมุนหมายเลขที่มีอยู่ Windows ระบบปฏิบัติการ
  • หากต้องการเชื่อมต่อกับโมเด็ม คุณสามารถใช้หมายเลขโทรศัพท์ได้
  • ด้วยความช่วยเหลือของปุ่มส่งและคำสั่งเชลล์ คุณสามารถโทรหาผู้ใช้ของคุณได้
  • Sendkey สั่งให้ Windows หมุนหมายเลขตามแป้นกดของแอปพลิเคชันในขณะที่ Shell เปิดใช้งาน Windows ใบสมัคร
  • สามารถใช้มาโครเพื่อเริ่มต้นโปรแกรมไฟล์การ์ดซึ่งจะเรียกใช้คุณสมบัติการโทรออกอัตโนมัติ

12) อธิบายว่า “Option Explicit” มีความหมายว่าอย่างไร? ควรใช้ที่ไหน?

“Option Explicit” ทำให้การประกาศตัวแปรบังคับ ฟังก์ชันที่ชัดเจนของบรรทัดทำให้คอมไพเลอร์กำหนดตัวแปรทั้งหมดที่ไม่ได้ประกาศโดยคำสั่ง dim คำสั่งนี้ช่วยลดปัญหาข้อผิดพลาดประเภทลงอย่างมาก ใช้ใน VBA เนื่องจากเกี่ยวข้องกับแอปพลิเคชันที่มีข้อมูลมากมายซึ่งมีข้อผิดพลาดประเภททั่วไป ก่อนที่จะเริ่มขั้นตอนย่อยใดๆ สามารถใช้ขั้นตอนย่อยภายในโมดูลได้


13) อธิบายว่าคุณสามารถส่งผ่านอาร์กิวเมนต์ไปยังฟังก์ชัน VBA ได้อย่างไร?

เมื่ออาร์กิวเมนต์ถูกส่งผ่านไปยังฟังก์ชัน VBA อาร์กิวเมนต์สามารถส่งผ่านได้สองวิธี

  • บายวัล: เมื่ออาร์กิวเมนต์ถูกส่งผ่านโดย Value หมายความว่าเฉพาะค่าเท่านั้นที่ถูกส่งผ่านไปยังโพรซีเดอร์ และการเปลี่ยนแปลงใด ๆ ที่เกิดขึ้นกับอาร์กิวเมนต์ภายในโพรซีเดอร์จะหายไปเมื่อออกจากโพรซีเดอร์
  • โดยRef: เมื่ออาร์กิวเมนต์ถูกส่งผ่านโดยการอ้างอิงมากกว่าที่อยู่ที่แท้จริงของอาร์กิวเมนต์จะถูกส่งผ่านไปยังขั้นตอน การเปลี่ยนแปลงใด ๆ ที่เกิดขึ้นกับอาร์กิวเมนต์ภายในกระบวนการจะถูกเรียกคืนเมื่อออกจากกระบวนการ

14) กล่าวถึงวิธีการที่ถูกเรียกจากวัตถุ ObjectContext เพื่อแจ้ง MTS ว่าธุรกรรมไม่สำเร็จหรือสำเร็จ?

เซตาบอร์ต และ ตั้งค่าเสร็จสมบูรณ์ วิธีการถูกเรียกจากวัตถุ ObjectContext เพื่อแจ้ง MTS ว่าธุรกรรมไม่สำเร็จหรือไม่สำเร็จ


15) รหัสอะไรที่ใช้ค้นหาแถวที่ใช้ล่าสุดในคอลัมน์หรือคอลัมน์ที่ใช้ครั้งสุดท้ายของแถว?

หากต้องการค้นหาแถวสุดท้ายในคอลัมน์ คำสั่งที่ใช้คือ End(xlUp) และหากต้องการค้นหาคอลัมน์สุดท้ายในแถว คำสั่งที่ใช้คือ End(xlToLeft)


16) พูดถึงความแตกต่างระหว่างรูทีนย่อยและฟังก์ชันใน VBA หรือไม่

ความแตกต่างระหว่าง Subroutines และ Functions ก็คือ

  • รูทีนย่อยไม่เคยส่งกลับค่า แต่ฟังก์ชันจะส่งกลับค่า
  • รูทีนย่อยสามารถเปลี่ยนค่าของอาร์กิวเมนต์จริงได้ ในขณะที่ฟังก์ชันไม่สามารถเปลี่ยนค่าของอาร์กิวเมนต์จริงได้

17) อธิบายว่าคุณสมบัติ CurrentRegion และ UsedRange แตกต่างกันอย่างไร

  • ภูมิภาคปัจจุบัน: ขอบเขตปัจจุบันคือช่วงที่ล้อมรอบด้วยคอลัมน์และแถวว่างผสมกัน
  • ใช้ช่วง: คุณสมบัตินี้ใช้เพื่อเลือกช่วงของเซลล์ที่ใช้ในแผ่นงาน จะส่งคืนวัตถุ Range ที่แสดงถึงช่วงที่ใช้ในแผ่นงานเฉพาะ

18) อธิบายวิธีการดีบักโค้ด VBA ได้อย่างไร

เมื่อต้องการดีบักโค้ด VBA ให้ทำตามขั้นตอนต่างๆ

  • การใช้เบรกพอยต์ (F9)
  • การดำเนินการทีละขั้นตอน (F8)
  • พิมพ์และหน้าต่างทันทีและดูหน้าต่าง

19) คุณจะหยุดสคริปต์ VBA ได้อย่างไรเมื่อมันเข้าสู่วงวนไม่สิ้นสุด?

โดยการกด Cntrl+ Pause Break สิ่งสำคัญประการหนึ่งสามารถหยุดสคริปต์ VBA ได้เมื่อเข้าสู่วงวนไม่สิ้นสุด


20) พูดถึงคุณสมบัติของเมนูที่ไม่สามารถตั้งค่าได้ในขณะรันไทม์?

ไม่สามารถตั้งค่าคุณสมบัติชื่อของเมนูในขณะรันไทม์ได้


21) พูดถึงว่า VBA มีโครงสร้างพจนานุกรมหรือไม่?

ใช่ VBA มีโครงสร้างพจนานุกรม คุณสามารถตั้งค่าการอ้างอิงถึงพจนานุกรมได้เช่น

  • ตั้งค่า dict = CreateObject (“Scripting.Dictionary”)
  • หรือ Dim dict เป็น New Scripting.Dictionary

22) พูดถึงว่าคุณจะแสดงความคิดเห็นและยกเลิกการใส่เครื่องหมายข้อคิดเห็นของบล็อกโค้ดในโปรแกรมแก้ไข VBA ของ office ได้อย่างไร

ในโปรแกรมแก้ไข VBA ของ Office คุณสามารถใส่คำอธิบายและยกเลิกคำอธิบายบล็อกโค้ดได้โดยทำตามขั้นตอนต่อไปนี้

  • ในตัวแก้ไข VBA ให้ไปที่มุมมอง -> แถบเครื่องมือ -> ปรับแต่ง... หรือคลิกขวาที่แถบเครื่องมือแล้วเลือกปรับแต่ง
  • เลือกเมนูแก้ไขทางด้านซ้ายใต้แท็บคำสั่ง
  • เมื่อคุณเลื่อนลงคุณจะเห็นไอคอนสองไอคอน "บล็อกความคิดเห็น" และ "ไม่แสดงความคิดเห็น"
  • เมื่อคุณลากและวางสิ่งเหล่านี้ลงบนแถบเครื่องมือ คุณจะสามารถเข้าถึงกลุ่มโค้ดได้อย่างง่ายดายและดำเนินการกับมันได้อย่างง่ายดาย

คำถามสัมภาษณ์เหล่านี้จะช่วยในวีว่าของคุณ (วาจา)