Note: The other languages of the website are Google-translated. Back to English

จะยกเลิกการเลือกช่องทำเครื่องหมายอื่นเมื่อมีการทำเครื่องหมายในช่องทำเครื่องหมายใน Excel ได้อย่างไร

ตามที่แสดงใน gif ด้านล่าง สมมติว่ามีรายการซื้อที่คุณต้องสรุป ขณะตรวจสอบรายการ คุณพบว่าสินค้าบางประเภทเกินงบประมาณและจำเป็นต้องเลือกใหม่ เนื่องจากรายการยาวเกินไป คุณจึงต้องการวิธีที่มีประสิทธิภาพมากขึ้นในการยกเลิกการเลือกช่องทำเครื่องหมายเดิมโดยอัตโนมัติเมื่อมีการเลือกช่องทำเครื่องหมายใหม่ในหมวดหมู่ บทช่วยสอนนี้สาธิตวิธีการทีละขั้นตอนเพื่อช่วยให้คุณทำสำเร็จ

ยกเลิกการเลือกช่องทำเครื่องหมายอื่นเมื่อมีการเลือกช่องทำเครื่องหมายใหม่ด้วยรหัส VBA


ยกเลิกการเลือกช่องทำเครื่องหมายอื่นเมื่อมีการเลือกช่องทำเครื่องหมายใหม่ด้วยรหัส VBA

ตามที่แสดงในตัวอย่างข้างต้น ช่องทำเครื่องหมายสิบช่องชื่อ ช่องทำเครื่องหมาย1, ช่องทำเครื่องหมาย2, ช่องทำเครื่องหมาย3, ... , ช่องทำเครื่องหมาย10 แบ่งออกเป็น 3 กลุ่ม และอยู่ในหมวดต่างๆ ในตาราง

ในตัวอย่างนี้ ช่องทำเครื่องหมาย 1, 2, 3 อยู่ในกลุ่มเดียว ช่องทำเครื่องหมาย 4, 5, 6, 7 อยู่ในกลุ่มเดียว และช่องทำเครื่องหมาย 8, 9,10 อยู่ในกลุ่มเดียวกัน ในแต่ละกลุ่ม สามารถเลือกช่องทำเครื่องหมายได้ครั้งละหนึ่งช่องเท่านั้น เมื่อทำเครื่องหมายที่ช่องทำเครื่องหมาย ช่องอื่นจะไม่ถูกเลือกโดยอัตโนมัติ

ตอนนี้เรามาดูวิธีการใช้โค้ด VBA ต่อไปนี้เพื่อแก้ปัญหานี้

1. คลิกขวาที่แท็บแผ่นงานแล้วคลิก ดูรหัส จากเมนูบริบท

2. ในช่องเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน window วางโค้ด VBA ต่อไปนี้ลงใน แผ่น (รหัส) หน้าต่าง

รหัส VBA: ยกเลิกการเลือกช่องทำเครื่องหมายอื่นเมื่อมีการเลือกช่องทำเครื่องหมายใหม่

Dim xBol As Boolean
'Updated by Extendoffice 20220816
Private Sub CheckBox1_Change()
SetCheckBoxes "CheckBox1"
End Sub

Private Sub CheckBox2_Change()
SetCheckBoxes "CheckBox2"
End Sub

Private Sub CheckBox3_Change()
SetCheckBoxes "CheckBox3"
End Sub

Private Sub CheckBox4_Change()
SetCheckBoxes "CheckBox4"
End Sub

Private Sub CheckBox5_Change()
SetCheckBoxes "CheckBox5"
End Sub

Private Sub CheckBox6_Click()
SetCheckBoxes "CheckBox6"
End Sub

Private Sub CheckBox7_Click()
SetCheckBoxes "CheckBox7"
End Sub
Private Sub CheckBox8_Click()
SetCheckBoxes "CheckBox8"
End Sub
Private Sub CheckBox9_Click()
SetCheckBoxes "CheckBox9"
End Sub
Private Sub CheckBox10_Click()
SetCheckBoxes "CheckBox10"
End Sub

Private Function SetCheckBoxes(mCheckBoxName As String)
Dim x As Long
Dim xAllArr
Dim xArrItem
Dim xI, xJ
If Not xBol Then Exit Function
'In the following line, the checkboxes enclosed in double quotes belong to the same group, and each checkbox is separated by a comma. To add more checkbox groups, please enclose the checkboxes in new double quotes.
xAllArr = Array("CheckBox1,CheckBox2,CheckBox3", "CheckBox4,CheckBox5,CheckBox6,CheckBox7", "CheckBox8,CheckBox9,CheckBox10")
For xI = LBound(xAllArr) To UBound(xAllArr)
If InStr(xAllArr(xI), mCheckBoxName) > 0 Then
xBol = False
xArrItem = Split(xAllArr(xI), ",")
For xJ = LBound(xArrItem) To UBound(xArrItem)
If xArrItem(xJ) <> mCheckBoxName Then
Me.OLEObjects(xArrItem(xJ)).Object.Value = False
End If
Next
End If
Next
xBol = True
End Function

Private Sub Worksheet_Activate()
xBol = True
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
xBol = True
End Sub

หมายเหตุ:

1) ในรหัส ช่องทำเครื่องหมาย 1 ช่องทำเครื่องหมาย 2 ... ช่องทำเครื่องหมาย10 เป็นชื่อของช่องทำเครื่องหมาย
2) ในบรรทัดต่อไปนี้ ช่องทำเครื่องหมายที่อยู่ในเครื่องหมายคำพูดคู่อยู่ในกลุ่มเดียวกัน และช่องทำเครื่องหมายแต่ละช่องจะคั่นด้วยเครื่องหมายจุลภาค หากต้องการเพิ่มกลุ่มช่องทำเครื่องหมาย โปรดใส่ช่องทำเครื่องหมายด้วยเครื่องหมายคำพูดคู่ใหม่
xAllArr = Array("CheckBox1,CheckBox2,CheckBox3", "CheckBox4,CheckBox5,CheckBox6,CheckBox7", "CheckBox8,CheckBox9,CheckBox10")
3) ช่องทำเครื่องหมายคือ การควบคุม ActiveX ช่องทำเครื่องหมาย

3 กด อื่น ๆ + Q ปุ่มเพื่อปิดไฟล์ Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

จากนั้นเมื่อคุณเลือกช่องทำเครื่องหมายใหม่ในกลุ่ม ช่องที่ทำเครื่องหมายเดิมจะไม่ถูกเลือกโดยอัตโนมัติตามที่แสดงใน gif ด้านล่าง


การสาธิต: ยกเลิกการเลือกช่องทำเครื่องหมายอื่นเมื่อทำเครื่องหมายในช่องทำเครื่องหมายใน Excel

  Kutools สำหรับ Excel รวมคุณสมบัติอันทรงพลังกว่า 300 รายการสำหรับ Microsoft Excel ทดลองฟรีโดยไม่มีข้อ จำกัด ใน 30 วัน ดาวน์โหลดตอนนี้!


เครื่องมือเพิ่มประสิทธิภาพการทำงานในสำนักงานที่ดีที่สุด

Kutools สำหรับ Excel แก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%

  • นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
  • สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
  • แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
  • ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
  • รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
  • คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ. รองรับ Office/Excel 2007-2021 และ 365 รองรับทุกภาษา ง่ายต่อการปรับใช้ในองค์กรหรือองค์กรของคุณ คุณสมบัติเต็มรูปแบบ ทดลองใช้ฟรี 30 วัน รับประกันคืนเงินภายใน 60 วัน
kte แท็บ 201905

แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (0)
ยังไม่มีการให้คะแนน เป็นคนแรกที่ให้คะแนน!
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ

ช่องทางอื่นๆ

ลิขสิทธิ์© 2009 - wwwextendoffice.com | สงวนลิขสิทธิ์. ขับเคลื่อนโดย ExtendOffice. | แผนผังเว็บไซต์
Microsoft และโลโก้ Office เป็นเครื่องหมายการค้าหรือเครื่องหมายการค้าจดทะเบียนของ Microsoft Corporation ในสหรัฐอเมริกาและ / หรือประเทศอื่น ๆ
ได้รับการปกป้องโดย Sectigo SSL