xin code hoặc công thức lọc dữ liệu theo tên

Liên hệ QC

vanhesing

Thành viên thường trực
Tham gia
12/8/10
Bài viết
223
Được thích
30
!$@!!!$@!! Tôi mong muốn các anh chị em giúp đỡ tôi phần này .
tôi muốn xin code hoặc công thức để khi tôi nhập dữ liệu xuất nhập thiết bị của 2 bộ phận từ 1 seet " nhật ký chung " những dữ liệu này sẽ lọc và phân loại ra mỗi sheet tưong ứng với từng bộ phận .
vấn đề tiếp theo mời mọi người tham khảo file đính kèm.
Rất mong có được sự giúp đỡ của cả nhà .
Chân thành cảm ơn !

Tôi đã chân thành xin giúp đỡ rồi , đây là bài thứ 3 nhưng vẫn ko ai phản hồi 1 cái gì cho sự mong đợi của Tôi cả.
Thanks cả nhà!!!
 

File đính kèm

Chỉnh sửa lần cuối bởi điều hành viên:
Mình thấy file của bạn khá hay.
-Thiết nghĩ ban nên chuyển sang BOX lập trình ý.Chạy bằng VBA có lẽ không khó đâu.Mình vẫn chưa đủ trình viết được..hihi
-Nếu làm cong cho mình xin file với nhé,để học hỏi thêm mà
 
Lần chỉnh sửa cuối:
Upvote 0
Không phải mọi người không trả lời mà có thể mọi người bận. Tôi gửi bạn file đây bạn mở sheet 3 và chọn trên chi nhánh tại ô G3 nhé. Mọi cái lọc như thế này bạn hãy dùng Advance filter nhé
 

File đính kèm

Upvote 0
Không phải mọi người không trả lời mà có thể mọi người bận. Tôi gửi bạn file đây bạn mở sheet 3 và chọn trên chi nhánh tại ô G3 nhé. Mọi cái lọc như thế này bạn hãy dùng Advance filter nhé

Tại Sheet3: chỉ cần dùng đoạn code sau
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target = [g3] Then Sheet2.[A9:O45].AdvancedFilter 2, [IV1:IV2], [A9:O9], 1
End Sub
Có thể xoá Module chứa Sub Loc() --=0
 
Upvote 0
Không phải mọi người không trả lời mà có thể mọi người bận. Tôi gửi bạn file đây bạn mở sheet 3 và chọn trên chi nhánh tại ô G3 nhé. Mọi cái lọc như thế này bạn hãy dùng Advance filter nhé
có công thức nào làm cho 2 phần xuất và nhập của 1 chi nhánh nằm cùng dòng với nhau ko bạn
 
Upvote 0
Tôi đã chân thành xin giúp đỡ rồi , đây là bài thứ 3 nhưng vẫn ko ai phản hồi 1 cái gì cho sự mong đợi của Tôi cả.
Thanks cả nhà!!!
Đôi khi người ta không trả lời vì tin rằng nếu bạn tự vận động chút trí não có thể bạn sẽ làm được thôi
Cũng như bài này, bạn nghĩ xem, nếu buộc phải làm bằng tay thì bạn sẽ dùng cái gì để lọc? Đơn giản nhất là AutoFilter, đúng không?
Vậy thì cứ thế mà làm ---> Record macro để ra được code
Hic...
 
Upvote 0
Đôi khi người ta không trả lời vì tin rằng nếu bạn tự vận động chút trí não có thể bạn sẽ làm được thôi
Cũng như bài này, bạn nghĩ xem, nếu buộc phải làm bằng tay thì bạn sẽ dùng cái gì để lọc? Đơn giản nhất là AutoFilter, đúng không?
Vậy thì cứ thế mà làm ---> Record macro để ra được code
Hic...
hic em làm được thì nói làm gì , em tha thẩn cầu xin mà chờ mòn mỏi ko thấy ai reply . anh giúp e với vẫn còn chỗ không
hiểu
 
Upvote 0
ý tưởng để giải quyết vấn đề mà bạn nêu ra:
1. Sử dụng Data -> Validation, với list là danh sách các chi nhánh của bạn, để lựa chọn điều kiện lọc
2. Viết code liên quan tới sự kiện thay đổi giá trị của điều kiện lọc (chắc bạn nắm được kỹ thuật lọc Advanced Filter)

Để viết được code thì phải đọc và thực hành nhiều lắm.
Điều này đòi hỏi thời gian và đâu phải ai cũng có sẵn thời gian để trả lời ngay cho bạn.
Bạn phải chịu khó tự tìm hiểu, mọi người có muốn giúp thì cũng chỉ là giúp lúc ngặt thôi.

Chúc bạn thành công.
 
Upvote 0
hic , em đã ngặt lắm rồi
tuần sau là em làm bài thuyết trình với sếp và đưa vào sử dụng
giờ này em vẫn chưa tìm ra hướng giải quết, cả tuần nay em toàn thức khuya để tải mấy file có liên quan để tìm hiểu có biết được thêm chút đỉnh nhưng vẫn chưa đủ
nên em mong cả nhà có cách nào đó giúp em hoàn thành , huhuhuhu
không biết nhà có ai ở TPHCm ko em muốn mời để trao đổi trực tiếp em cũng dể tiếp thu nhanh hơn
 
Upvote 0
Bạn xem trong file đính kèm nha

PHP:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
 If Not Intersect(Target, [D5]) Is Nothing Then
   Dim Sh As Worksheet, Rng As Range, Cls As Range, sRng As Range
   Dim eRw As Long:                 Dim MyAdd As String
   
   Set Sh = Sheets("S0"):           eRw = Sh.[C65500].End(xlUp).Row
   [B9].Resize(eRw, 12).ClearContents
   Sh.Range("B8:O" & eRw).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Sh.Range( _
        "X7:X8"), CopyToRange:=Sh.Range("AA7:AH7"), Unique:=False
   eRw = Sh.[AE65500].End(xlUp).Row              'Dòng 8 Có DL'
   [B9].Resize(eRw - 7, 8).Value = Sh.[AA8].Resize(eRw - 7, 8).Value
   Set Rng = Sh.Range(Sh.[d8], Sh.[d65500].End(xlUp))
   For Each Cls In Range([D9], [d65500].End(xlUp))
      Set sRng = Rng.Find(Cls.Value, , xlValues, xlWhole)
      If Not sRng Is Nothing Then
         MyAdd = sRng.Address
         Do
            If sRng.Offset(, 6).Value <> "" Then
               Cls.Offset(, 6).Resize(, 4).Value = sRng.Offset(, 6).Resize(, 4).Value
            End If
            Set sRng = Rng.FindNext(sRng)
         Loop While Not sRng Is Nothing And sRng.Address <> MyAdd
      End If
   Next Cls
 End If
End Sub
 

File đính kèm

Upvote 0
PHP:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
 If Not Intersect(Target, [D5]) Is Nothing Then
   Dim Sh As Worksheet, Rng As Range, Cls As Range, sRng As Range
   Dim eRw As Long:                 Dim MyAdd As String
   
   Set Sh = Sheets("S0"):           eRw = Sh.[C65500].End(xlUp).Row
   [B9].Resize(eRw, 12).ClearContents
   Sh.Range("B8:O" & eRw).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Sh.Range( _
        "X7:X8"), CopyToRange:=Sh.Range("AA7:AH7"), Unique:=False
   eRw = Sh.[AE65500].End(xlUp).Row              'Dòng 8 Có DL'
   [B9].Resize(eRw - 7, 8).Value = Sh.[AA8].Resize(eRw - 7, 8).Value
   Set Rng = Sh.Range(Sh.[d8], Sh.[d65500].End(xlUp))
   For Each Cls In Range([D9], [d65500].End(xlUp))
      Set sRng = Rng.Find(Cls.Value, , xlValues, xlWhole)
      If Not sRng Is Nothing Then
         MyAdd = sRng.Address
         Do
            If sRng.Offset(, 6).Value <> "" Then
               Cls.Offset(, 6).Resize(, 4).Value = sRng.Offset(, 6).Resize(, 4).Value
            End If
            Set sRng = Rng.FindNext(sRng)
         Loop While Not sRng Is Nothing And sRng.Address <> MyAdd
      End If
   Next Cls
 End If
End Sub
hic. chân thành cảm ơn bạn . bài này vượt cả sự mong đợi , mình có thể update thêm số liệu sẽ ko vấn đề gì chứ bạn ?
bạ ở TPHCM được dịp mời bạn uống ca fe nha
thnks
 
Upvote 0
hic , em đã ngặt lắm rồi
tuần sau là em làm bài thuyết trình với sếp và đưa vào sử dụng
giờ này em vẫn chưa tìm ra hướng giải quết, cả tuần nay em toàn thức khuya để tải mấy file có liên quan để tìm hiểu có biết được thêm chút đỉnh nhưng vẫn chưa đủ
nên em mong cả nhà có cách nào đó giúp em hoàn thành , huhuhuhu
không biết nhà có ai ở TPHCm ko em muốn mời để trao đổi trực tiếp em cũng dể tiếp thu nhanh hơn
Nước đến chân mới nhảy, thật không hay tí nào
Viết code cho bạn chẳng có vấn đề gì, nhưng chẳng ai dám bảo đảm code mình không bị lỗi nào đó
Nói xui, bạn đang thuyết trình mà code bị trục trặc thì bạn... làm sao?
(Có tí kiến thức trong đầu còn hy vọng giải quyết ---> Đầu trống rỗng xem như... tèo)
 
Upvote 0
chân thành cảm ơn bạn . bài này vượt cả sự mong đợi , (1) mình có thể update thêm số liệu sẽ ko vấn đề gì chứ bạn ?
(2) bạn ở TPHCM được dịp mời bạn uống ca fe nha
thnks

(1) Khi bạn thêm chi nhánh khác với 3 chi nhánh đang có thì fải tìm đến vùng đã gán tên 'ChiNhanh' bổ sung vố tên chi nhánh mới; Có vậy bạn mới chọn nó trong danh sách của Validation được;

(2) Bạn đang ở quận nào trong khu vực TP vậy?
Nếu là Thủ Đức, Bình thạnh hay Gò vấp thì sẽ cữ ChanhTQ@ đến dự;

Nếu fía Q.8 hay Q.4 mình sẽ cử HYen17 đến dự

Còn lại minh sẽ tự ên;

Xin báo trước: Cả ba người này hay gọi Lipton nóng, là OK! Ngoài ra mình xin mời riêng 1 số người nữa trong diễn đàn.. . (Cũng nhân đây xin mời lơi các nhân vật: BNTT, Jenny, YeuDoi, NDU. . . . ; Khà, khà,. . . ghé về TP để làm bữa cafê túy lúy, nha)

Hẹn gặp lúc bạn rỗi rãi!
 
Upvote 0
hahahaha--=0 vô tư
sẵn mời bác ndu hộ mình luôn %#^#$
à mình mới đưa cái bạn làm cho mình vào file hoàn chỉnh , mình sữa code ở mấy địa chỉ cái ô cho phù hợp mà nó ko chạy . hic
bạn giúp mình lần nữa nha /-*+/
Mình ở khu vực Q bình chánh làm ở Q tân bình đường Trường Chinh , hay uống cà phê trong khu tên lữa quận Bình Tân , mình đãi quán cốc nên bạn mời anh em đi dông dông . hí hí hí
Giúp mình nha sắp xong rồi
thanks
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
File bạn đưa lên đang bị lỗi vùng mà macro cần làm việc; Bạn fải sửa cho hết lỗi

Trang 'DuLieu' của bạn có các công thức đang báo đầy lỗi là lỗi; Vậy sao macro làm việc được.

Nó im lặng là còn nương cho bạn đó; Đáng ra nó la lên mới fải
 
Upvote 0
Trang 'DuLieu' của bạn có các công thức đang báo đầy lỗi là lỗi; Vậy sao macro làm việc được.

Nó im lặng là còn nương cho bạn đó; Đáng ra nó la lên mới fải
ý bạn là lỗi #NA ? do ko đủ dk nó hiện ra mà , mình ko biết làm sao cho nó mất , hic
vì nó lấy dữ liệu mấy sheeet đằng trước mà
 
Upvote 0
Về công thức thì mình có khi còn thua cả bạn

Nhưng nhìn công thức này =IF(AND(U4=VLOOKUP(U4,XK,1,0),Q4=VLOOKUP(Q4,CN,1,0)),IF(OR(NK_CHUNG!G6>1,NK_CHUNG!F6>1),"TB Tốt",""),"")
ở [W4] & không có lỗi mình cũng còn dị ứng luôn đó.
Chứ chưa nói công thức ô bên fải liền kề đang sai
=IF(AND(Y4=VLOOKUP(Y4,NK,1,0),Q4=VLOOKUP(Q4,CN,1,0)),'NVKT-NVSC'!B6,"")

Mình thử trích =VLOOKUP(Y4,NK,1,0) ra 1 ô trống thì báo lỗi rồi (#N/A)
nên Y4=VLOOKUP(Y4,NK,1,0) cũng là lỗi như vậy.
Trong những truờng hợp như vầy, mình hay dùng hàm TYPE() trong excel để loại trừ lỗi; Các bạn khác thường dùng cách khác, bạn tìm hiểu thêm trên diễn đàn.
 
Chỉnh sửa lần cuối bởi điều hành viên:
Upvote 0
Nhưng nhìn công thức này =IF(AND(U4=VLOOKUP(U4,XK,1,0),Q4=VLOOKUP(Q4,CN,1,0)),IF(OR(NK_CHUNG!G6>1,NK_CHUNG!F6>1),"TB Tốt",""),"")
ở [W4] & không có lỗi mình cũng còn dị ứng luôn đó.
Chứ chưa nói công thức ô bên fải liền kề đang sai
=IF(AND(Y4=VLOOKUP(Y4,NK,1,0),Q4=VLOOKUP(Q4,CN,1,0)),'NVKT-NVSC'!B6,"")

Mình thử trích =VLOOKUP(Y4,NK,1,0) ra 1 ô trống thì báo lỗi rồi (#N/A)
nên Y4=VLOOKUP(Y4,NK,1,0) cũng là lỗi như vậy.
Trong những truờng hợp như vầy, mình hay dùng hàm TYPE() trong excel để loại trừ lỗi; Các bạn khác thường dùng cách khác, bạn tìm hiểu thêm trên diễn đàn.
mình gà mà , bạn nói mình cũng ko hiể lắm
những công thức đó phụ thuộc vào dk các ô kế cận mà , chính xác là ô tên chi nhánh và số phiếu .
còn code mình vẫn giữ nguyên chỉ thay đổi số ô tên cột thôi mà sao nó không chạy , hic khổ tâm quá mấy tiếng đồgn hồ vẫn chưa được gì
vậy là chỉ cần lọc bỏ lỗi #N/A trong 1 ô thì nó sẽ lọc được phải ko bạn
bạn cho mình xin 1 công thức mẫu với đề tài của mình nha , mình mới tìm hiểu excel nên ko rành công thức lắm
thanks bạn !!
 
Lần chỉnh sửa cuối:
Upvote 0
mình làm được rồi mình dùng hàm iserror loại bỏ chữ #N/A rồi
giờ giúp mình chỉnh sữa code lại cho nó lọc ra giùm . thanks nhiều lắm
 

File đính kèm

Upvote 0
Vậy bạn dịch thành tiếng Việt í định bạn viết 2 công thức trên xem sao

May ra các nhà siêu công thức trên diễn đàn sẽ giúp bạn loại trừ lỗi như hiện nay.

Riêng mình thì chưa bao giờ vận hành macro trên trang tính còn có công thức lỗi.
 
Upvote 0
Web KT

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

Back
Top Bottom