khanhnth02
Thành viên thường trực




- Tham gia
- 5/8/07
- Bài viết
- 338
- Được thích
- 36
CHÚC MỪNG NĂM MỚI=INDEX($D$71:$H$82,MATCH($K$75,$B$71:$B$82,0),IF($K$74="Kỷ",1,IF($K$74="Canh",2,IF($K$74="Tân",3,IF($K$74="Nhâm",4,5)))))
dùng cái này thử nhésử dụng hàm gì cho file này vậy? (có đến 2 vlookup )trong sheet1 từ B68:H82
cảm ơn các anh chị nhé
=VLOOKUP($K$75,$B$68:$H$82,MATCH("*"&$K$74,$B$69:$H$69,0),0)
cảm ơn sư phụ đã chỉ giáoĐối với những list sử dụng nhiều như list Can và Chi, nên tạo 2 cột liệt kê nó ra. Từ 2 cột này có thể tạo rất nhiều bảng mà không cần gõ tay.
Kể cả những ô mang tính dò tìm cũng thế.
Thí dụ trong file, sau khi tạo 2 list Can và Chi, tôi đã dùng công thức tạo 2 bảng (tô màu) B54:K65 và D71:H82
Ngoài ra, 2 ô K74 và K75 có thể dùng list để tạo validation.
Ô M60 sẽ không cần công thức mảng mà chỉ cần Index.
=INDEX($N$54:$N$63;MOD(L60-1;10)+1)&" "&INDEX($O$54:$O$65;MOD(L60-1;12)+1)
Ô K76 cũng thế:
=INDEX($D$71:$H$82;MATCH($K$75;$B$71:$B$82;0);MOD(MATCH(K74;$N$54:$N$63;0);5))
Nếu dùng Vlookup thì cũng được:
=VLOOKUP(K75;$B$71:$H$82;MOD(MATCH(K74;$N$54:$N$63;0);5)+2;0)
Bạn có thể thực hiện tương tự cho các bảng khác, các ô khác, chỉ cần dựa vào 2 list can, chi.
To nhóc linhngoc:
Trò làm sót cho 5 can Giáp, Ất, Bính, Đinh, Mậu, 5 can này bị đổ đồng giống như can Quý
To Lê Duy Thương:
Công thức =VLOOKUP($K$75,$B$68:$H$82,MATCH("*"&$K$74,$B$69:$H$69,0),0)
Cùng 1 lỗi bỏ sót 5 can như sư muội linhngoc, nhưng 5 can Giáp, Ất, Bính, Đinh, Mậu không phải bị đổ đồng với Quý mà sẽ bị lỗi #NA
Muốn làm kiểu này thì phải "*"&$K$74&"*"
cảm ơn sư phụ đã chỉ giáo
đệ tử lại tìm thêm 1 cách nữa
và M60
=HLOOKUP(IF(--RIGHT($L$60)=0,10,--RIGHT($L$60)),$B$54:$K$65,LOOKUP($L$60,{1,11,21,31,41,51},{2,4,6,8,10,12}),0)
[/COLOR]
nếu đã hlookup và cần lấy số đuôi, tại sao không lấy mod(l60, 10) cho khỏe, if iếc, trừ trừ, cộng cộng 4 năm dấu. Lại còn từ số chuyển thành text rồi chuyển ngược lại thành số, thật là rỗi hơi.
Còn nữa, cái lookup thứ 2, cần gì lookup phải xài tới 2 mảng, dùng choose khoẻ hơn không?
m60 =hlookup(mod(l60-1,10)+1,b54:k65,choose(int(l60/10)+1,2,4,6,8,10,12))
hoặc ngắn hơn nữa:
m60 =hlookup(mod(l60-1,10)+1,b54:k65,(int(l60/10)+1)*2)
K76 bạn sửa lại 1 chút:sao tôi gõ cột cuối cùng (cột H), mậu và quý thì K76 ko cho ra kết quả vậy.
anh có thể giải luôn cột B201265 được không. để cho trùng dữ liệu. tôi ko hiểu công thức cho lắm nên làm ko ra.
Cảm ơn mọi nguời nhé
sư phụ xem có ngắn hơn không nhéK76 bạn sửa lại 1 chút:
=INDEX($D$71:$H$82;MATCH($K$75;$B$71:$B$82;0);MOD( MATCH(K74;$N$54:$N$63;0)-1;5)+1)
hoặc
=VLOOKUP(K75;$B$71:$H$82;MOD(MATCH(K74;$N$54:$N$63;0)-1;5)+3;0)
=VLOOKUP($K$75,$B$68:$H$82,MATCH("*"&$K$74&"*",$B$69:$H$69,0),0)
hoặc của Duy Thương:
=HLOOKUP("*"&$K$74&"*",$B$69:$H$82,MATCH($K75,$B$6 9:$B$82,0),0)
To Duy Thuong:
Có cái nào ngắn hơn công thức sau đây thì hãy đưa lên nhé. Dài ngoằng đưa lên làm gì.
M60 =HLOOKUP(MOD(L60-1,10)+1,B54:K65,(INT((L60-1)/10)+1)*2)
M60 =OFFSET($B$54,MATCH(L60,$B$54:$B$65),RIGHT(L60-1))
(Có sửa chỗ màu đỏ, nhóc linhngoc phát hiện)
Có khích tướng mới làm được. Với lại hôm qua chắc "say xỉn nên không minh mẫn" (câu biện minh muôn thuở)sư phụ xem có ngắn hơn không nhé
M60 =HLOOKUP(MOD(L60-1,10)+1,B54:K65,(INT((L60-1)/10)+1)*2)
M60 =OFFSET($B$54,MATCH(L60,$B$54:$B$65),RIGHT(L60-1))
sư phụ bỏ qua vì đệ tử hay cãi
Câu hỏi của bạn không khó, nhưng làm cột B rồi, không biết quy luật xung khắc thế nào để ra 2 cột C, D. Quy luật này chắc 1 mình bạn biết thôi.mọi ngừoi không giúp tôi luôn từ B201265 với