VBA และฟังก์ชัน | วิธีใช้ AND Logical Operator ใน VBA

Excel VBA และฟังก์ชัน

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

ฉันหวังว่าคุณจะอ่านบทความของเราเรื่อง“ VBA OR” และ“ VBA IF OR” แล้ว ฟังก์ชันนี้ตรงกันข้ามกับฟังก์ชัน OR ในฟังก์ชัน OR เราต้องการเงื่อนไขทางตรรกะที่ให้มาเพื่อให้ได้ผลลัพธ์เป็น TRUE แต่ในฟังก์ชัน AND มันเป็นเพียงสิ่งที่ตรงกันข้าม เพื่อให้ได้ผลลัพธ์ของ TRUE ต้องมีการทดสอบตรรกะที่ให้มาทั้งหมดใน excel

ตกลงดูไวยากรณ์ของฟังก์ชัน AND ใน excel

[การทดสอบทางตรรกะ] และ[การทดสอบทางตรรกะ] และ[การทดสอบทางตรรกะ]

ข้างต้นฉันมีคะแนนสอบสองคะแนนจาก 600 คะแนน

ในคอลัมน์ผลลัพธ์ฉันต้องได้ผลลัพธ์เป็น TRUE หากคะแนนของการทดสอบทั้งสองมากกว่าเท่ากับ 250

ดูภาพด้านล่าง

เมื่อเราใช้ฟังก์ชันลอจิคัลและเราได้ผลลัพธ์ ในเซลล์ C4 และ C5 เราได้ผลลัพธ์เป็น TRUE เนื่องจากคะแนนการทดสอบ 1 และการทดสอบ 2 มากกว่าหรือเท่ากับ 250

ดูเซลล์ C6 ที่นี่เรามี FALSE แม้ว่าคะแนนของการทดสอบ 2 จะเท่ากับ 250 ก็ตามเนื่องจากในการทดสอบ 1 คะแนนเพียง 179

ตัวอย่างการใช้ VBA และฟังก์ชัน

คุณสามารถดาวน์โหลดเทมเพลต VBA และ Excel ได้ที่นี่ - เทมเพลต VBA และ Excel

ตัวอย่าง # 1

ตัวอย่างเช่นเราจะทดสอบตัวเลขที่นี่ไม่ว่าจะเป็น 25> = 20 และ 30 <= 31

ขั้นตอนที่ 1:ประกาศตัวแปรเป็น String

รหัส:

 ย่อย AND_Example1 () Dim K เป็น String End Sub 

ขั้นตอนที่ 2:สำหรับตัวแปร“ k” เราจะกำหนดค่าโดยใช้ฟังก์ชัน AND

รหัส:

 ย่อย AND_Example1 () Dim K As String K = End Sub 

ขั้นตอนที่ 3:ระบุเงื่อนไขแรกเป็น 25> = 20

รหัส:

 ย่อย AND_Example1 () Dim K As String K = 25> = 20 End Sub 

ขั้นตอนที่ 4:เปิดฟังก์ชัน AND และจัดหาการทดสอบตรรกะที่สองเช่น 30 <= 29

รหัส:

 ย่อย AND_Example1 () Dim K As String K = 25> = 20 และ 30 <= 29 End Sub 

ขั้นตอนที่ 5:ตอนนี้แสดงผลลัพธ์ของตัวแปร“ k” ในกล่องข้อความใน VBA

รหัส:

 Sub AND_Example1 () Dim K As String K = 25> = 20 และ 30 <= 29 MsgBox K End Sub 

เรียกใช้แมโครเพื่อดูว่าผลลัพธ์คืออะไร

เราได้ผลลัพธ์เป็น FALSE เนื่องจากเราไม่ได้ใช้สองเงื่อนไขเงื่อนไขแรก 25> = 20 เงื่อนไขนี้เป็นที่พอใจดังนั้นผลลัพธ์จึงเป็น TRUE และเงื่อนไขที่สอง 30 <= 29 ผลลัพธ์ที่ไม่เป็นที่พอใจคือ FALSE เพื่อให้ได้ผลลัพธ์เป็นจริงทั้งสองเงื่อนไขควรเป็นที่พอใจ

ตัวอย่าง # 2

ตอนนี้ฉันจะเปลี่ยนการทดสอบตรรกะเป็น“ 100> 95 และ 100 <200”

รหัส:

 ย่อย AND_Example2 () Dim k As String k = 100> 95 และ 100 <200 MsgBox k End Sub 

รันโค้ดเพื่อดูผลลัพธ์

ที่นี่เราได้ TRUE เป็นผลลัพธ์เพราะ

การทดสอบตรรกะครั้งที่ 1: 100> 95 = TRUE

การทดสอบตรรกะครั้งที่ 2: 100 <200 = TRUE

เนื่องจากเราได้ผลลัพธ์ที่เป็นจริงสำหรับทั้งการทดสอบเชิงตรรกะผลลัพธ์สุดท้ายของเราเป็น TRUE

ตัวอย่าง # 3

ตอนนี้เราจะเห็นข้อมูลจากแผ่นงาน ใช้ข้อมูลที่เราใช้เพื่อแสดงตัวอย่างของฟังก์ชัน excel AND

นี่คือเงื่อนไขเป็นทดสอบ 1 คะแนน> = 250 และการทดสอบ 2 คะแนน> = 250

เนื่องจากเรามีข้อมูลมากกว่าหนึ่งเซลล์เราจึงต้องใช้ลูปเพื่อหลีกเลี่ยงการเขียนโค้ดบรรทัดที่ไม่จำเป็นและใช้เวลานาน ฉันได้เขียนโค้ดด้านล่างสำหรับคุณสูตรและตรรกะเป็นสิ่งเดียวกับที่ฉันใช้“ VBA For Next Loop”

รหัส:

 ย่อย AND_Example3 () Dim k เป็นจำนวนเต็มสำหรับ k = 2 ถึง 6 เซลล์ (k, 3) .Value = เซลล์ (k, 1)> = 250 และเซลล์ (k, 2)> = 250 ถัดไป k End Sub 

สิ่งนี้จะให้ผลลัพธ์เหมือนกับฟังก์ชันแผ่นงานของเราทุกประการ แต่เราจะไม่ได้รับสูตรใด ๆ เราจะได้ผลลัพธ์เท่านั้น

ด้วยวิธีนี้เราสามารถใช้ AND ตรรกะฟังก์ชันเพื่อทดสอบเงื่อนไขหลาย ๆ เงื่อนไขซึ่งทั้งหมดควรเป็น TRUE เพื่อให้ได้ผลลัพธ์ที่ต้องการ

สิ่งนี้ทำงานตรงข้ามกับฟังก์ชัน OR โดยสิ้นเชิงโดยที่ OR ต้องการเงื่อนไขที่ให้มาเป็น TRUE เพื่อให้ได้ผลลัพธ์ แต่ AND ต้องการผลลัพธ์ 100% ในการทดสอบเชิงตรรกะเพื่อให้ได้ผลลัพธ์