Auto sort dữ liệu

Liên hệ QC

Duong gia

Thành viên thường trực
Tham gia
15/1/07
Bài viết
352
Được thích
118
Chào các bạn, mong các bạn giúp đỡ: mình có 1 bảng tính gồm các cột sau: Mã hàng Tên hàng Lọc1 Lọc2 156101 Hàng A 1 2 156102 Hàng B 2 1 156103 Hàng C 4 3 156104 Hàng D 3 4 Mình muốn tạo 1 nút Lọc 1: Khi click vào nút này nó sẽ sort dữ liệu theo thứ tự 1,2,3,4 (ĐK cột Lọc 1) Còn khi click nào nút Lọc 2: nó sẽ lọc sort dữ liệu theo thứ 1,2,3,4 (ĐK cột Lọc 2) Dùng VBA nhé. Thanks
 
Lần chỉnh sửa cuối:
Cái này bạn record macro là ra mà, nếu tiện mình nên cho 1 hộp thạoi lọc theo cột nào thì hay hơn.
E1 là số TT cột lọc.
PHP:
[QUOTE]Sub Loc()
Dim endR&, CotLoc&
Dim myRng As Range
With Sheets("Sheet1")
  endR = .Cells(65000, 1).End(xlUp).Row
  If endR = 2 Then GoTo Exit_Sub
  CotLoc = .[E1]
  Set myRng = .Range(.Cells(2, 1), .Cells(endR, 4))
End With
With myRng
  .Sort Key1:=.Cells(1, CotLoc), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False
End With
Set myRng = Nothing
Exit_Sub:
MsgBox "OK"
End Sub

[/QUOTE]
 
Lần chỉnh sửa cuối:
Upvote 0
Mình làm thử xem đúng ý không hen
PHP:
Sub sortdata()
Dim rrange As Range
Set rrange = Application.InputBox("Cho dong muon sort", "Thong bao", , , , , , 8)
Range("a2:d5").Sort rrange.Cells(1, 1), xlAscending
End Sub
 

File đính kèm

Upvote 0

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Sao không ai giúp mình hết.
 
Lần chỉnh sửa cuối:
Upvote 0
Xem file xong... hổng hiểu tí nào!
Là thế này, do hàng hóa cùng một mặt hàng (cùng tên) khác nhau về quy cách đóng gói nằm rải rác các dòng, khi qua Sheet Nhập liệu tìm chọn lâu quá mất thời gian nữa nên mình mới yêu cầu như vậy. Tức là khi ở Sheet HANGHOA nó sao để vậy, còn khi ra khỏi sheet HANGHOA thì nó tự động sắp thế thứ tự theo cột lọc H từ nhỏ đến lớn. VD Thuốc A02, A04, A09, A11, khi ra khỏi sheet HANGHOA nó tự động sắp xếp liền kề nhau. Bác giúp nhé, cám ơn nhiều!!!!!!!!!!!!!!!!!!
 
Lần chỉnh sửa cuối:
Upvote 0
Là thế này, do hàng hóa cùng một mặt hàng (cùng tên) khác nhau về quy cách đóng gói nằm rải rác các dòng, khi qua Sheet Nhập liệu tìm chọn lâu quá mất thời gian nữa nên mình mới yêu cầu như vậy. Tức là khi ở Sheet HANGHOA nó sao để vậy, còn khi ra khỏi sheet HANGHOA thì nó tự động sắp thế thứ tự theo cột lọc H từ nhỏ đến lớn. VD Thuốc A02, A04, A09, A11, khi ra khỏi sheet HANGHOA nó tự động sắp xếp liền kề nhau. Bác giúp nhé, cám ơn nhiều!!!!!!!!!!!!!!!!!!
Cho code này vào sheet HANGHOA nhé:
PHP:
Private Sub Worksheet_Deactivate()
  With Range([A6], [A65536].End(xlUp)).Resize(, 8)
    .Sort .Cells(1, 8), 1, Header:=xlNo
  End With
End Sub
 
Upvote 0
Cho code này vào sheet HANGHOA nhé:
PHP:
 Private Sub Worksheet_Deactivate()   With Range([A6], [A65536].End(xlUp)).Resize(, 8)     .Sort .Cells(1, 8), 1, Header:=xlNo   End With End Sub
Được rồi, Bác đúng là tuyệt vời. khi ra khỏi sheet HANGHOA là đúng rồi, nhưng khi quay lại sheet HANGHOA thì nó trả lại ban đầu chứ, tức là sắp xếp theo mã mã hàng ở cộ A ấy. bác cố gắng giúp một lần nữa nhé. Thanks bác nhiều. ....................................
 
Lần chỉnh sửa cuối:
Upvote 0
Được rồi, Bác đúng là tuyệt vời. khi ra khỏi sheet HANGHOA là đúng rồi, nhưng khi quay lại sheet HANGHOA thì nó trả lại ban đầu chứ, tức là sắp xếp theo mã mã hàng ở cộ A ấy. bác cố gắng giúp một lần nữa nhé. Thanks bác nhiều. ....................................
Thì thêm 1 code nữa:
PHP:
Private Sub Worksheet_Activate()
  With Range([A6], [A65536].End(xlUp)).Resize(, 8)
    .Sort .Cells(1, 1), 1, Header:=xlNo
  End With
End Sub
Chưa hiểu sort vậy để làm cái gì nữa
 
Upvote 0
Thì thêm 1 code nữa:
PHP:
Private Sub Worksheet_Activate()
  With Range([A6], [A65536].End(xlUp)).Resize(, 8)
    .Sort .Cells(1, 1), 1, Header:=xlNo
  End With
End Sub
Chưa hiểu sort vậy để làm cái gì nữa
Chắc Duong gia "Tướng" này muốn làm chuyện giống như thế này quá.
 

File đính kèm

Upvote 0
Chắc Duong gia "Tướng" này muốn làm chuyện giống như thế này quá.
Cám ơn bạn nhé. Có chúc thay đổi mong bạn giúp đỡ. Bỏ sheet NHAPLIEU đi Khi vô sheet HANGHOA nó trở lại trạng thái ban đầu, vậy là OK rồi. Khi ra khỏi sheet HANGHOA mình muốn nó sort Ascending theo cột B "Tên hàng hóa" . Thanks, mong bác giúp sớm!
 
Lần chỉnh sửa cuối:
Upvote 0
Cám ơn bạn nhé. Có chúc thay đổi mong bạn giúp đỡ. Bỏ sheet NHAPLIEU đi Khi vô sheet HANGHOA nó trở lại trạng thái ban đầu, vậy là OK rồi. Khi ra khỏi sheet HANGHOA mình muốn nó sort Ascending theo cột B "Tên hàng hóa" . Thanks, mong bác giúp sớm!
Khi ra khỏi sheet HANGHOA nó Sort theo kiểu gì làm sao mình thấy được; sort để làm gì trong khi mình đang ở sheet khác, chuyện này đến giờ Bạn vẫn chưa nói rõ thành làm khó nhau thêm.
---Trong Sheet HangHoa, Cột B "Tên Hàng Hóa" của Bạn đang nhập theo thứ tự của cột Mã mà! Sao không đưa ví dụ thật đi! Sau này lại nói là Sort theo chữ cái đầu tiên hay chữ cái cuối cùng lại rách việc.
 
Upvote 0
Khi ra khỏi sheet HANGHOA nó Sort theo kiểu gì làm sao mình thấy được; sort để làm gì trong khi mình đang ở sheet khác, chuyện này đến giờ Bạn vẫn chưa nói rõ thành làm khó nhau thêm. ---Trong Sheet HangHoa, Cột B "Tên Hàng Hóa" của Bạn đang nhập theo thứ tự của cột Mã mà! Sao không đưa ví dụ thật đi! Sau này lại nói là Sort theo chữ cái đầu tiên hay chữ cái cuối cùng lại rách việc.
Bác Ba Tê này nóng thật, Sheet HANGHOA dùng để khai báo tên hàng, quy cách, giá bán cho nên khi phát sinh mua anh nào trước thì khai trước, anh nào mua sau thì khai sau và mã hàng giống như số CMND vậy, mỗi mặt hàng 1 mã không được trùng lập. Chính vì vậy khi vô lại sheet HANGHOA mình muốn sắp xếp theo thứ tự Mã hàng hóa ở Cột A để khi khai báo mã mới khỏi bị khai trùng. Còn mục đích của mình khi sang các sheet khác nó tự động sort theo cột B "Tên hàng" theo thứ tự chữ cái gồm Bảng 1 gồm 10 mặt hàng và Bảng 2 gồm 10 sau. Mục đích để NV xuất hàng chọn hàng xuất cho chính xác vì nó xếp thứ thứ tự chữ cái mà. Còn việc vận dụng chọn mã hàng như thế nào khi qua sheet khác thì mình biết rồi. Bác nóng quá, giúp dùm một tí nhen.Thanks
 
Lần chỉnh sửa cuối:
Upvote 0
Bác Ba Tê này nóng thật, Sheet HANGHOA dùng để khai báo tên hàng, quy cách, giá bán cho nên khi phát sinh mua anh nào trước thì khai trước, anh nào mua sau thì khai sau và mã hàng giống như số CMND vậy, mỗi mặt hàng 1 mã không được trùng lập. Chính vì vậy khi vô lại sheet HANGHOA mình muốn sắp xếp theo thứ tự Mã hàng hóa ở Cột A để khi khai báo mã mới khỏi bị khai trùng. Còn mục đích của mình khi sang các sheet khác nó tự động sort theo cột B "Tên hàng" theo thứ tự chữ cái gồm Bảng 1 gồm 10 mặt hàng và Bảng 2 gồm 10 sau. Mục đích để NV xuất hàng chọn hàng xuất cho chính xác vì nó xếp thứ thứ tự chữ cái mà. Còn việc vận dụng chọn mã hàng như thế nào khi qua sheet khác thì mình biết rồi. Bác nóng quá, giúp dùm một tí nhen.Thanks
Thế thì trong File Bạn sao không đưa ví dụ "thật thật" một tí, với ví dụ như thế này thì Mã và Tên có gì khác nhau đâu mà sort (không thử được làm sao biết nó chạy đúng hay không)
TenHang.JPG
 
Upvote 0
Lần chỉnh sửa cuối:
Upvote 0
Hic đúng bài toán mình đang làm mà đau đầu quá. Thank các bác, bi giờ nghiên cứu ví dụ à
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom