วิธีใช้ isna ใน vba (พร้อมตัวอย่าง)
คุณสามารถใช้เมธอด IsNA ใน VBA เพื่อตรวจสอบว่าเซลล์ที่ระบุมี #N/A หรือไม่
ฟังก์ชันนี้จะส่งคืน ค่า TRUE ถ้าเซลล์มี #N/A หรือ FALSE มิฉะนั้น
นี่เป็นวิธีทั่วไปในการใช้วิธีนี้ในทางปฏิบัติ:
Sub UseIsNA()
Dim i As Integer
For i = 2 To 10
Range("B" & i) = WorksheetFunction.IsNA(Range("A" & i))
Next i
End Sub
มาโครนี้จะตรวจสอบว่าแต่ละเซลล์ในช่วง A2:A10 มี #N/A หรือไม่
หากเซลล์มี #N/A ฟังก์ชัน TRUE จะถูกส่งกลับในเซลล์ที่เกี่ยวข้องในช่วง B2:B10
มิฉะนั้น FALSE จะถูกส่งกลับ
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
ตัวอย่าง: วิธีใช้ IsNA ใน VBA
สมมติว่าเรามีคอลัมน์ค่าต่อไปนี้ใน Excel:
สมมติว่าเราต้องการตรวจสอบว่าแต่ละเซลล์ในคอลัมน์ A มี #N/A หรือไม่
เราสามารถสร้างมาโครต่อไปนี้เพื่อทำสิ่งนี้:
Sub UseIsNA()
Dim i As Integer
For i = 2 To 10
Range("B" & i) = WorksheetFunction.IsNA(Range("A" & i))
Next i
End Sub
เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:
คอลัมน์ B จะแสดงผลลัพธ์ที่แจ้งให้เราทราบว่าแต่ละเซลล์ที่ตรงกันในคอลัมน์ A มีค่าเท่ากับ #N/A หรือไม่
โปรดทราบว่าเซลล์ว่างไม่เหมือนกับ #N/A เมื่อพบเซลล์ว่าง เมธอด IsNA จะส่งกลับ FALSE
โปรดทราบว่าคุณสามารถใช้คำสั่ง If เพื่อส่งคืนค่าอื่นที่ไม่ใช่ TRUE และ FALSE ได้
ตัวอย่างเช่น เราสามารถสร้างแมโครต่อไปนี้:
Sub UseIsNA()
Dim i As Integer
For i = 2 To 10
If WorksheetFunction.IsNA(Range("A" & i)) Then
Range("B" & i) = "Cell Contains #N/A"
Else
Range("B" & i) = "Cell Does Not Contain #N/A"
End If
Next i
End Sub
เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:
ขณะนี้คอลัมน์ B มีข้อความเฉพาะที่บอกเราว่าเซลล์ที่เกี่ยวข้องในคอลัมน์ A มี #N/A หรือไม่
หมายเหตุ : คุณสามารถดูเอกสารฉบับสมบูรณ์ของวิธี VBA IsNA ได้ที่นี่
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ใน VBA:
วิธีแปลงสตริงเป็น int ใน VBA
วิธีแปลงสตริงเป็นสองเท่าใน VBA
วิธีตรวจสอบว่าสตริงมีสตริงอื่นใน VBA หรือไม่