การจัดเรียงแบบกำหนดเองใน Excel เป็นคุณสมบัติที่มีประโยชน์มาก ในบทความนี้เราจะพูดถึงวิธีอัปเดตการจัดเรียงแบบกำหนดเองในช่วงโดยอัตโนมัติโดยใช้ Excel VBA
เมื่อคุณใช้การจัดเรียงแบบกำหนดเองคุณจะพบว่านี่เป็นคุณสมบัติที่น่าทึ่งใน Excel อย่างไรก็ตามหากคุณใช้คุณสมบัตินี้บ่อยๆคุณอาจพบปัญหาเช่นกัน คุณจะจัดเรียงในช่วงที่มีข้อมูลและข้อมูลบางอย่าง เมื่อคุณเพิ่มข้อมูลและข้อมูลเพิ่มเติมลงในช่วงลำดับในช่วงจะไม่เปลี่ยนแปลงโดยอัตโนมัติ ภาพด้านล่างแสดงตัวอย่างของเงื่อนไขดังกล่าว
เมื่อคุณเพิ่มชุดข้อมูลใหม่ลงในช่วงข้อมูลนั้นจะไม่เปลี่ยนอันดับโดยอัตโนมัติ หากคุณยังต้องการจัดเรียงช่วงที่ใหญ่กว่านี้ด้วยข้อมูลใหม่ที่กำหนดโดยเกณฑ์เดียวกันคุณต้องดำเนินการตามขั้นตอนการจัดเรียงแบบกำหนดเองอีกครั้ง คุณจะเห็นได้ว่านี่เป็นปัญหามากโดยเฉพาะอย่างยิ่งเมื่อคุณต้องอัปเดตข้อมูลและข้อมูลในแผ่นงานอยู่ตลอดเวลา ทุกครั้งที่คุณเพิ่มข้อมูลใหม่ลงในช่วงคุณจะต้องเรียงลำดับอีกครั้ง เพื่อแก้ปัญหานี้และทำงานให้เสร็จโดยเร็วคุณสามารถอ่านบทความนี้ต่อได้
บันทึกมาโคร
เมื่อเกณฑ์ของการจัดเรียงแบบกำหนดเองมีความซับซ้อนมากคุณจะพบว่าการเขียนโค้ด VBA โดยตรงทำได้ยาก ดังนั้นตอนนี้คุณสามารถบันทึกมาโครได้ก่อน และรหัสในมาโครนี้สามารถใช้ในมาโครอื่น ๆ ได้ ขั้นตอนการบันทึกรหัสนั้นง่ายมาก
- ก่อนที่คุณจะบันทึกแมโครคุณต้องเพิ่มแท็บของ VBA ใน Ribbon คลิกขวาที่แท็บใดก็ได้ใน Ribbon ที่นี่
- จากนั้นเลือก "กำหนดริบบิ้นเอง" ในเมนู
- ในหน้าต่าง "ตัวเลือก Excel" ให้เลือกตัวเลือก "นักพัฒนา" ในรายการ "แท็บหลัก"
- หลังจากนั้นคลิก“ ตกลง” ในหน้าต่าง ดังนั้นคุณได้เพิ่มแท็บใน Ribbon
- ตอนนี้คุณจะกลับมาที่แผ่นงาน คลิกแท็บ“ นักพัฒนา” ที่คุณเพิ่ม
- จากนั้นคลิกปุ่ม“ บันทึกมาโคร” ในแถบเครื่องมือ ดังนั้นหน้าต่าง "บันทึกมาโคร" จะปรากฏขึ้น
ในทางกลับกันคุณยังสามารถคลิกปุ่มเล็ก ๆ ที่ด้านล่างของแผ่นงานเพื่อแทนที่ 6 ขั้นตอนข้างต้น
- ตอนนี้ในหน้าต่าง "บันทึกมาโคร" ให้ป้อนชื่อลงในกล่องข้อความแรก กำหนดคีย์ลัดหากคุณต้องการ จากนั้นเพิ่มคำอธิบายตามความต้องการของคุณ
- จากนั้นคลิก“ ตกลง” ดังนั้นมาโครจะเริ่มบันทึกทุกการดำเนินการที่คุณทำ
- เลือกช่วงที่คุณต้องการจัดเรียงในแผ่นงาน
- คลิกแท็บ“ หน้าแรก”
- จากนั้นคลิกปุ่ม "เรียงลำดับและกรอง" ใน Ribbon
- ในรายการแบบเลื่อนลงเลือกตัวเลือก "จัดเรียงแบบกำหนดเอง"
- ในหน้าต่าง "เรียงลำดับ" กำหนดเกณฑ์ตามความต้องการของคุณ การดำเนินการทั้งหมดจะถูกบันทึกไว้ในแมโคร
เมื่อคุณบันทึกมาโครอย่าทำขั้นตอนเพิ่มเติม มิฉะนั้นขั้นตอนเหล่านั้นจะถูกบันทึกด้วย และสิ่งนี้จะทำให้เกิดปัญหาในส่วนต่อไปนี้
- หลังจากเสร็จสิ้นการตั้งค่าในหน้าต่าง "เรียงลำดับ" ให้คลิก "ตกลง" เพื่อบันทึกการตั้งค่า
- ตอนนี้คลิกแท็บ“ นักพัฒนา” ใน Ribbon อีกครั้ง
- จากนั้นคลิกปุ่ม“ หยุดการบันทึก” เมื่อแผ่นงานอยู่ในสภาพของมาโครการบันทึกปุ่มจะเปลี่ยนเป็น "หยุดการบันทึก"
คุณยังสามารถคลิกปุ่มที่ด้านล่างของแผ่นงานเพื่อหยุดบันทึกมาโคร ดังนั้นคุณจึงเสร็จสิ้นการบันทึก เกณฑ์การจัดเรียงทั้งหมดได้รับการบันทึกในมาโคร 1
ใช้ Excel VBA Macros
ในส่วนนี้เราจะแสดงวิธีใช้มาโคร VBA เพื่ออัปเดตการจัดเรียงแบบกำหนดเองในแผ่นงานของคุณ และคุณจะใช้มาโครที่บันทึกไว้ในส่วนนี้ด้วย
- คลิกแท็บ“ นักพัฒนา” ใน Ribbon
- จากนั้นคลิกปุ่ม“ Visual Basic” ในแถบเครื่องมือ คุณยังสามารถกดปุ่ม“ Alt + F11” บนแป้นพิมพ์เพื่อแทนที่ 2 ขั้นตอนได้
- ในโปรแกรมแก้ไข Visual Basic ให้ดับเบิลคลิกที่แผ่นงานในพื้นที่“ VBAProject” ในแผ่นงานนี้คุณต้องอัปเดตการจัดเรียงแบบกำหนดเอง และในไฟล์จริงของคุณคุณต้องดับเบิลคลิกที่แผ่นงานที่เกี่ยวข้อง
- ตอนนี้ใส่รหัสต่อไปนี้ลงในพื้นที่
Private Sub Worksheet_Change(ByVal Target As Range) End Sub
- จากนั้นป้อนรหัสต่อไปนี้ระหว่างสองประโยค VBA ข้างต้น
Application.ScreenUpdating = False
If Not Intersect(Target, Range("A1:C13")) Is Nothing Then
End If
นี่คือช่วงโดยประมาณ จะมีเวลา 12 เดือนสำหรับปริมาณการขายและเมื่อรวมกับแถวแรกของส่วนหัวเราจะป้อนช่วง“ A1: C13” คุณยังสามารถป้อนช่วงลงในรหัสตามแผ่นงานจริงของคุณ
- ในขั้นตอนนี้ให้เปิดโมดูล 1 ในตัวแก้ไข รหัสในโมดูลนี้เป็นกระบวนการจัดเรียงแบบกำหนดเองที่คุณได้ทำไว้ก่อนหน้านี้ คุณจะเห็นได้ว่าการใช้คุณสมบัติการบันทึกมาโครช่วยให้คุณประหยัดเวลาได้มาก
- ตอนนี้คัดลอกส่วนหลักในโมดูลนี้
- จากนั้นดับเบิลคลิกที่ไฟล์ tarรับแผ่นงานในส่วน“ VBAProject”
- หลังจากนั้นวางรหัสลงในรหัส IF-END IF
- จากนั้นปรับเปลี่ยนช่วงในรหัสตามความต้องการของคุณ มาโครที่บันทึกมีความซับซ้อนและซ้ำซ้อนเล็กน้อย คุณยังสามารถปรับเปลี่ยนได้ตามความต้องการของคุณ ดังนั้นรหัส VBA ที่สมบูรณ์จะเป็นดังนี้:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Not Intersect(Target, Range("A1:C13")) Is Nothing Then
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SortFields.Clear
.SortFields.Add Key:=Range("B2:B13"), _
SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
.SortFields.Add Key:=Range("C2:C13"), _
SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
End With
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SetRange Range("A1:C13")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End If
End Sub
เราเพิ่ม WITH-END WITH อีกอันลงในโค้ด ดังนั้นจะชัดเจนกว่าผลการบันทึก หากคุณมีข้อกำหนดอื่น ๆ คุณสามารถปรับเปลี่ยนได้ตามความต้องการที่แท้จริงของคุณ คุณต้องระมัดระวังในการแก้ไขรหัส มิฉะนั้นคุณจะได้ผลลัพธ์ที่ไม่ถูกต้องในแผ่นงาน
- ตอนนี้คุณทำรหัส VBA เสร็จแล้วในตัวแก้ไข คุณสามารถกลับมาที่เวิร์กชีตและทดสอบผลลัพธ์ได้ เมื่อคุณเพิ่มเดือนถัดไปและตัวเลขที่เกี่ยวข้องลงในช่วงการจัดเรียงแบบกำหนดเองจะรีเฟรชโดยอัตโนมัติ
ดังนั้นคุณไม่จำเป็นต้องอัปเดตการจัดเรียงแบบกำหนดเองด้วยตนเองทุกครั้งที่คุณป้อนองค์ประกอบใหม่ลงในไฟล์ tarรับช่วง ในทางกลับกันคุณต้องบันทึกสมุดงานนี้เป็นไฟล์ Excel ที่เปิดใช้งานมาโคร มิฉะนั้นคุณจะสูญเสียรหัสหากคุณบันทึกเป็นไฟล์ธรรมดา
เราจะให้ความช่วยเหลือแก่เหยื่อการทุจริตของ Excel
เราทุกคนรู้ดีว่า Excel มีประสิทธิภาพมากและสามารถช่วยให้คุณทำงานเสร็จได้อย่างรวดเร็วและง่ายดาย แต่แอปพลิเคชัน Excel ยังห่างไกลจากความสมบูรณ์แบบ บางครั้ง Excel อาจเสียหายเนื่องจากสาเหตุหลายประการ เมื่อ Excel เสียหายคุณจะไม่สามารถทำงานให้เสร็จโดยแอปพลิเคชันนี้ได้ เพื่อให้ทำงานได้ดีขึ้นคุณจะต้องซ่อมแซมโดยเร็วที่สุด
บริษัท ของเราทำงานในพื้นที่การกู้คืนมาหลายปีโดยเฉพาะการกู้คืน Excel ดังนั้นคุณสามารถขอความช่วยเหลือจากเจ้าหน้าที่ด้านเทคนิคของเราได้ ด้วยประสบการณ์ที่ยาวนานเราสามารถหาสาเหตุที่ทำให้ไฟล์ของคุณเสียหายได้อย่างง่ายดาย และเพื่อช่วยให้คุณดีขึ้น ซ่อมแซมความเสียหายของไฟล์ Excel xlsxเราได้พัฒนาเครื่องมือของบุคคลที่สาม เครื่องมือนี้จัดการได้ง่ายมากและคุณไม่จำเป็นต้องกังวลเกี่ยวกับปัญหาความเป็นส่วนตัว
บทนำผู้เขียน:
Anna Ma เป็นผู้เชี่ยวชาญด้านการกู้คืนข้อมูลใน DataNumen, Inc. ซึ่งเป็นผู้นำระดับโลกด้านเทคโนโลยีการกู้คืนข้อมูล ได้แก่ ซ่อมแซมข้อผิดพลาด Word docx และผลิตภัณฑ์ซอฟต์แวร์ซ่อมแซมแนวโน้ม ดูข้อมูลเพิ่มเติมได้ที่ wwwdatanumenด้วย.









