Cần hỏi cách tham chiếu dữ liệu với nhiều điều kiện. (1 người xem)

  • Thread starter Thread starter kamichan
  • Ngày gửi Ngày gửi

Người dùng đang xem chủ đề này

kamichan

Thành viên mới
Tham gia
4/6/08
Bài viết
2
Được thích
0
Em làm file quản lý hàng xuất nhập tồn nhưng đang bí cách làm thế nào để lọc dữ liệu với 3 điều kiện: Tháng, mã vật liệu, số tiền (Đã làm được lọc với ĐK: Tháng, mã và số lượng). Em xin gứi file đính kèm, anh chị nào bày cách cho em với ạ. }}}}}
Em xin cảm ơn!
 

File đính kèm

Bạn thử hàm người dùng sau:

PHP:
Option Explicit
Function SoDuDauKy(Thang As Byte, Ma As String, Optional TTien As Boolean = True)
 Dim Sh, Rng As Range, Cls As Range:                        Dim Col As Byte
 
 Set Sh = Sheets("DANH MUC VT")
 Set Rng = Sh.Range(Sh.[d5], Sh.[iv5].End(xlToLeft))
 Col = Rng.Find(Thang, , xlFormulas, xlWhole).Column
 If TTien Then Col = Col + 1
 Set Rng = Sh.Range(Sh.[b6], Sh.[b6].End(xlDown))
 For Each Cls In Rng
   If Cls.Value = Ma Then
      SoDuDauKy = Sh.Cells(Cls.Row, Col).Value:             Exit Function
   End If
 Next Cls
End Function


Cách xài: Tại [G7] bạn nhập cú fáp =SoDuDauKy(H$3,B7) & ô liền kề bên trái là cú fáp
=SoDuDauKy(H$3,B7,FALSE)
Sau đó nắm đầu 2 thằng cha này lôi (FillDown) xuống đến dòng 10 giúp cái nha.
 
Công thức ô F7 = VLOOKUP(B7,'DANH MUC VT'!$B$6:$O$10,$H$3*2-7,0)
Công thức ô G7 = VLOOKUP(B7,'DANH MUC VT'!$B$6:$O$10,$H$3*2-6,0)

FillDown cho cả vùng là được
Chú ý: Kỳ lạ là câu hỏi chả có ăn nhập gì với nội dung trong File cả?
 
Lần chỉnh sửa cuối:
Em xin cảm ơn bác sealand & ChanhTQ. Tại kiến thức excel của em có hạn nên e cũng không biết diễn tả thế nào cho đúng với chuyên môn cả. Nhân đây em muốn hỏi bác sealand về công thức bác chỉ cho em, VLOOKUP(B7,'DANH MUC VT'!$B$6:$O$10,$H$3*2-7,0) thì thay vì là số cột bác dùng $H$3*2-6 (7) , bác có thể chỉ cho em cách dùng này có ý nghĩa thế nào không ạ? Để lần sau em còn học mà làm theo. Em cảm ơn bác lắm lắm ạ!!
 
Đây là cách tính để nhảy bước, thực ra nó chẳng phải là thuật toán gì cả mà chỉ là cái mẹo mà thôi. Công thức Vlookup thì bạn rõ rồi, chỉ vướng là chỉ ra cho công thức biết lấy số liệu từ cột nào (tính từ cột đầu của vùng 'DANH MUC VT'!$B$6:$O$10 ) trong 16 cột ấy. Ta để ý mỗi tháng có 2 cột vậy đây là hệ số nhân . Vậy muốn lấy cột nào của tháng thì chỉ cần lấy tích trừ đi số cột cần lấy là số trừ chung cho các tháng

Áp vào bài cụ thể nhé. Ví dụ lấy so luong của tháng 5
Hệ số nhân là 2
Vậy cột lấy soluong tháng 5= 5*2-7
Tổng quát lại
Cot=Thang * 2 – 7
Ví dụ tháng 6
Cot= 6*2-7= 5

Một ví dụ khác để hiểu thêm:
Tìm tháng đầu quý nếu biết quý?
Mỗi quý có 3 tháng, tống số tháng trừ đi 2 là tháng đầu quý
Vậy tháng đầu quý 3 là

3 * 3-2=7

Bạn cố hiểu nha, mình kém diễn giải lắm.
 

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

Back
Top Bottom