:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

การ Hide แถวใน Excel

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
วังวู ช่ง
Silver
Silver
Posts: 811
Joined: Thu May 31, 2012 2:27 pm
Location: Laos
Excel Ver: MS Excel for office 365 MSO
Contact:

การ Hide แถวใน Excel

#1

Post by วังวู ช่ง »

เรียน ท่าน อาจารย์ และ สมาชิกทุกท่านครับ
ช่วยผมแก้ปัณหาคือว่า ถ้าแถวใดไม่มีตัวเลขใน
Column L ให้ Hide ไว้ครับตัวอย่างนี้คือ
แถว 15-20,22-23,25-28,30-45,48-51,54-61
66-77,91-93,97-103,108-117,119-121,123-155
157,159-170,183-186,188 และ 190-196 ครับ
แต่มีมากกว่านี้ครับ เพียงเป็นตัวอย่างครับ
ทังหมด 100 กว่า มส ครับ
ความต้องการใน sheet2 ครับ
ขอบคุณล่วงหน้าครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31256
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: การ Hide แถวใน Excel

#2

Post by snasui »

:D ลองตามนี้ครับ
  1. เซลล์ M11 คีย์ CheckAmout เพื่อเป็นหัวคอลัมน์
  2. เซลล์ M12 คีย์สูตร
    =L12=0
    Enter > Copy ลงด้านล่าง
  3. คลุม M11:Mn (n คือเซลล์สุดท้ายทีมีข้อมูล)
  4. เข้าเมนู Data > Filter > คลิก Dropdown ที่ M11 แล้วเลือก False
วังวู ช่ง
Silver
Silver
Posts: 811
Joined: Thu May 31, 2012 2:27 pm
Location: Laos
Excel Ver: MS Excel for office 365 MSO
Contact:

Re: การ Hide แถวใน Excel

#3

Post by วังวู ช่ง »

snasui wrote::D ลองตามนี้ครับ
  1. เซลล์ M11 คีย์ CheckAmout เพื่อเป็นหัวคอลัมน์
  2. เซลล์ M12 คีย์สูตร
    =L12=0
    Enter > Copy ลงด้านล่าง
  3. คลุม M11:Mn (n คือเซลล์สุดท้ายทีมีข้อมูล)
  4. เข้าเมนู Data > Filter > คลิก Dropdown ที่ M11 แล้วเลือก False
:D ขอบคุณท่าน อาจารย์มากๆครับ ได้ตามต้องการครับ :thup: :cp:
วังวู ช่ง
Silver
Silver
Posts: 811
Joined: Thu May 31, 2012 2:27 pm
Location: Laos
Excel Ver: MS Excel for office 365 MSO
Contact:

Re: การ Hide แถวใน Excel

#4

Post by วังวู ช่ง »

ถ้าใช้กรับ VBA ความต้องการคือว่า ถ้าเลือกรหัสใน M1 (sheet Report) ให้ Hide ที่ M12:M201 ส่วนที่เป็น TRUE ครับ จะแก้ไข Code อย่างไลครับ
ขอบคุณทุกท่านล่วงหน้าครับ

Code: Select all

Sub Filter()
    If Range("M1") = "" Then
        ActiveSheet.ShowAllData
    Else
        ActiveSheet.Range("$M$12:$M$201").AutoFilter Field:=1, _
            Criteria1:=Range("M1").Value
    End If
End Sub
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31256
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: การ Hide แถวใน Excel

#5

Post by snasui »

:D ถ้าต้องการเลือกจาก M1 ให้เปลี่ยน M1 เป็น True กับ False เพื่อใช้กรองข้อมูลครับ

หากจะเปลี่ยนใน Code ก็เปลี่ยนที่ Criteria1:=Range("M1").Value ลองเปลี่ยนเองดูก่อนครับ
วังวู ช่ง
Silver
Silver
Posts: 811
Joined: Thu May 31, 2012 2:27 pm
Location: Laos
Excel Ver: MS Excel for office 365 MSO
Contact:

Re: การ Hide แถวใน Excel

#6

Post by วังวู ช่ง »

snasui wrote::D ถ้าต้องการเลือกจาก M1 ให้เปลี่ยน M1 เป็น True กับ False เพื่อใช้กรองข้อมูลครับ

หากจะเปลี่ยนใน Code ก็เปลี่ยนที่ Criteria1:=Range("M1").Value ลองเปลี่ยนเองดูก่อนครับ
เนื่องจากเปลี่ยน M1 เป็น True กับ False ไม่ได้ เพราะเป็นรหัสของโรงเรียนครับ นั้นผมเปลี่ยนแปลง True กับ False มาเป็นรหัสใน M1 แทน แล้วเอา Code ตามเก่าครับ

Code: Select all

Sub Filter()
    If Range("M1") = "" Then
        ActiveSheet.ShowAllData
    Else
        ActiveSheet.Range("$M$12:$M$201").AutoFilter Field:=1, _
            Criteria1:=Range("M1").Value
    End If
End Sub
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31256
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: การ Hide แถวใน Excel

#7

Post by snasui »

:D สรุปว่า คำถามคืออะไร ตอนนี้แก้ปัญหาได้แล้วหรือไม่ครับ
วังวู ช่ง
Silver
Silver
Posts: 811
Joined: Thu May 31, 2012 2:27 pm
Location: Laos
Excel Ver: MS Excel for office 365 MSO
Contact:

Re: การ Hide แถวใน Excel

#8

Post by วังวู ช่ง »

snasui wrote::D สรุปว่า คำถามคืออะไร ตอนนี้แก้ปัญหาได้แล้วหรือไม่ครับ
ได้แล้วครับ ท่าน อาจารย์ครับ เนื่องจากท่าน อาจารย์แนะนำแบบนี้
snasui wrote::D ถ้าต้องการเลือกจาก M1 ให้เปลี่ยน M1 เป็น True กับ False เพื่อใช้กรองข้อมูลครับ
หากจะเปลี่ยนใน Code ก็เปลี่ยนที่ [color=#FF0000]Criteria1:=Range("M1").Value[/color] ลองเปลี่ยนเองดูก่อนครับ
ผมมาเปี่ลยน [color=#FF0000]Criteria1:=Range("M1").Value[/color] ก็ไม่ได้เลียแปลง FALSE ให้ตรงค่าใน M1 ส่วน TRUE ให้เป็น BLANKS แล้วส่วน Code จะไม่เปลี่ยนแปลงแล้วสามาดใช้ได้แล้วครับ
ขอบคุณท่านอาจารย์ครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31256
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: การ Hide แถวใน Excel

#9

Post by snasui »

snasui wrote::D ถ้าต้องการเลือกจาก M1 ให้เปลี่ยน M1 เป็น True กับ False เพื่อใช้กรองข้อมูลครับ

หากจะเปลี่ยนใน Code ก็เปลี่ยนที่ Criteria1:=Range("M1").Value ลองเปลี่ยนเองดูก่อนครับ
:lol: ผมหมายถึงว่าสามารถเปลี่ยนได้ 2 ที่หลัก ๆ นั่นคือเปลี่ยนที่ M1 หรือเปลี่ยนใน Code

แต่เท่าที่ดูสูตรเป็นการดึงค่ามาตามเงื่อนไขใน M1 มาเป็นลำดับแรก ถัดมาจึงจะดู True หรือ False หากเป็นเช่นนี้จึงควรปรับใน Code

ยกตัวอย่างเช่น ดูค่าใน M1 ที่เป็น False สามารถปรับ Code เป็น

Code: Select all

Sub Filter()
    If Range("M1") = "" Then
        ActiveSheet.ShowAllData
    Else
        ActiveSheet.Range("$M$12:$M$201").AutoFilter Field:=1, _
            Criteria1:=False
    End If
End Sub
วังวู ช่ง
Silver
Silver
Posts: 811
Joined: Thu May 31, 2012 2:27 pm
Location: Laos
Excel Ver: MS Excel for office 365 MSO
Contact:

Re: การ Hide แถวใน Excel

#10

Post by วังวู ช่ง »

snasui wrote:
snasui wrote::D ถ้าต้องการเลือกจาก M1 ให้เปลี่ยน M1 เป็น True กับ False เพื่อใช้กรองข้อมูลครับ

หากจะเปลี่ยนใน Code ก็เปลี่ยนที่ Criteria1:=Range("M1").Value ลองเปลี่ยนเองดูก่อนครับ
:lol: ผมหมายถึงว่าสามารถเปลี่ยนได้ 2 ที่หลัก ๆ นั่นคือเปลี่ยนที่ M1 หรือเปลี่ยนใน Code

แต่เท่าที่ดูสูตรเป็นการดึงค่ามาตามเงื่อนไขใน M1 มาเป็นลำดับแรก ถัดมาจึงจะดู True หรือ False หากเป็นเช่นนี้จึงควรปรับใน Code

ยกตัวอย่างเช่น ดูค่าใน M1 ที่เป็น False สามารถปรับ Code เป็น

Code: Select all

Sub Filter()
    If Range("M1") = "" Then
        ActiveSheet.ShowAllData
    Else
        ActiveSheet.Range("$M$12:$M$201").AutoFilter Field:=1, _
            Criteria1:=False
    End If
End Sub
:D ขอบคุณท่านอาจารย์ครับ
ผมปรับแล้วแต่ผมปรับแบบนี้ แล้วมันไม่ได้ครับ ผมทำผิดเองครับ :lol: :thup: :cp:

Code: Select all

Criteria1:="False"
Post Reply