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

วิธีซ่อนคอลัมน์ตามเวลาจริงตามการป้อนข้อมูลของผู้ใช้ใน Excel?

อาจเป็นงานทั่วไปสำหรับพวกเราส่วนใหญ่ในการซ่อนคอลัมน์ใน Excel แต่คุณเคยพยายามซ่อนคอลัมน์โดยอัตโนมัติตามค่าอินพุตบางค่าหรือไม่? ตัวอย่างเช่น เมื่อฉันป้อนข้อความ "AA" ในเซลล์ คอลัมน์ A จะถูกซ่อน เมื่อฉันป้อน "BB" คอลัมน์ B และ C จะถูกซ่อน เมื่อเข้าสู่ "CC" คอลัมน์ D และ E จะถูกซ่อน เมื่อเข้าสู่ "DD" คอลัมน์ F จะถูกซ่อนตามที่แสดงด้านล่าง บทความนี้จะสร้างโค้ด VBA เพื่อแก้ปัญหาใน Excel

ซ่อนหรือเลิกซ่อนคอลัมน์ตามเวลาจริงตามการป้อนข้อมูลของผู้ใช้ด้วยรหัส VBA

ซ่อนหรือเลิกซ่อนคอลัมน์เพื่อกรองข้อมูลตามข้อมูลที่ผู้ใช้ป้อนด้วยโค้ด VBA


ซ่อนหรือเลิกซ่อนคอลัมน์ตามเวลาจริงตามการป้อนข้อมูลของผู้ใช้ด้วยรหัส VBA

หากต้องการซ่อนคอลัมน์เฉพาะตามเวลาจริงตามค่าอินพุต โปรดใช้โค้ด VBA ด้านล่าง:

1. ในเวิร์กชีตที่คุณต้องการซ่อนคอลัมน์ ให้คลิกขวาที่แท็บแผ่นงาน แล้วคลิก ดูรหัส จากเมนูบริบท ดูภาพหน้าจอ

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

รหัส VBA: ซ่อนคอลัมน์ตามเวลาจริงตามการป้อนข้อมูลของผู้ใช้

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby ExtendOffice
xcell = Range("K1").Value
Select Case xcell
Case "AA": Columns("A").EntireColumn.Hidden = False
Columns("A").EntireColumn.Hidden = True
Case "BB": Columns("B:C").EntireColumn.Hidden = False
Columns("B:C").EntireColumn.Hidden = True
Case "CC": Columns("D:E").EntireColumn.Hidden = False
Columns("D:E").EntireColumn.Hidden = True
Case "DD": Columns("F").EntireColumn.Hidden = False
Columns("F").EntireColumn.Hidden = True
Case Else
Columns("A:G").EntireColumn.Hidden = False
End Select
End Sub
หมายเหตุ: ในโค้ดด้านบน K1 เป็นเซลล์ที่คุณป้อนข้อความเฉพาะ และคุณควรเปลี่ยนชื่อข้อความและคอลัมน์ตามที่คุณต้องการ นอกจากนี้ คุณสามารถเพิ่มเกณฑ์ใหม่อื่นๆ เพียงแค่เพิ่มสคริปต์ด้านล่าง:
  • กรณี "AA": คอลัมน์ ("A")).EntireColumn.Hidden = False
  • คอลัมน์("A")).EntireColumn.Hidden = True

3. จากนั้นปิดหน้าต่างรหัส ตอนนี้เมื่อป้อน “AA” ในเซลล์ K1 แล้วกด เข้าสู่ คีย์ คอลัมน์ A ถูกซ่อนไว้ เมื่อเข้าสู่ “BB” แล้วกด เข้าสู่ คีย์ คอลัมน์ B และ C ถูกซ่อน และอื่นๆ หากคุณป้อนค่าอื่นหรือลบเนื้อหา คอลัมน์ที่ซ่อนอยู่จะแสดงพร้อมกัน ดูการสาธิตด้านล่าง:


ซ่อนหรือเลิกซ่อนคอลัมน์เพื่อกรองข้อมูลตามข้อมูลที่ผู้ใช้ป้อนด้วยโค้ด VBA

ในตัวอย่างนี้ ฉันจะกรองช่วงข้อมูลตามชื่อผลิตภัณฑ์ที่ป้อน เมื่อฉันป้อน "Hoodie" เฉพาะข้อมูล Hoodie เท่านั้นที่จะแสดงและคอลัมน์อื่น ๆ จะถูกซ่อนในครั้งเดียว และเมื่อฉันป้อน "ทั้งหมด" คอลัมน์ทั้งหมดจะแสดงดังที่แสดงด้านล่าง:

1. ในเวิร์กชีตที่คุณต้องการซ่อนคอลัมน์ ให้คลิกขวาที่แท็บแผ่นงาน แล้วคลิก ดูรหัส จากเมนูบริบทดูภาพหน้าจอ:

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

รหัส VBA: ซ่อนหรือเลิกซ่อนคอลัมน์เพื่อกรองข้อมูลตามอินพุตของผู้ใช้

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby ExtendOffice
    Dim x As Variant, y As String
     If Target.Address = "$K$1" Then
        y = Target.Value
        With Range("B1:H1")
            Application.ScreenUpdating = False
            .EntireColumn.Hidden = (y <> "All")
            If y <> "All" Then
                For Each x In .Cells
                    If x = y Then x.EntireColumn.Hidden = False
                Next
            End If
            Application.ScreenUpdating = True
        End With
    End If
End Sub
หมายเหตุ: ในโค้ดด้านบน K1 คือเซลล์ที่คุณป้อนข้อความเฉพาะ B1: H1 คือส่วนหัวของแถวที่มีชื่อผลิตภัณฑ์ที่คุณต้องการกรอง

3. จากนั้นปิดหน้าต่างรหัส ตอนนี้ หากคุณป้อนชื่อผลิตภัณฑ์ลงในเซลล์ K1 ระบบจะแสดงเฉพาะคอลัมน์ที่เกี่ยวข้อง คอลัมน์อื่นๆ จะถูกซ่อน และหากคุณป้อนข้อความ "ทั้งหมด" คอลัมน์ทั้งหมดจะปรากฏตามตัวอย่างที่แสดงด้านล่าง:


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

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

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

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

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