Các câu hỏi về hàm dò tìm dữ liệu (Lookup, Vlookup, Hlookup...)

  • Thread starter Thread starter songlon
  • Ngày gửi Ngày gửi
Liên hệ QC

Closed poll

  • 1

    Votes: 1 100.0%
  • 2

    Votes: 0 0.0%

  • Total voters
    1
  • Poll closed .
Status
Không mở trả lời sau này.
Hỏi về hàm VLookup và hàm HLookup

Mình là người mới, ở cả trong 4rum lẫn trong môn học excel, mình mới học excel dc một thời gian ngắn. Học đến đoạn hàm Vlookup với hàm Hlookup là mình chả hiểu j` hết trơn -+*/. Thực hành thì bị dính vô bài này !$@!! . Hiện có 2 bài tập mình đang làm dở nhưng ko thể tiếp tục do không làm dc hàm. Mong các bạn giúp đỡ . Đó là BTTH9 và BTT10 với nội dung câu hỏi như sau.

BTTH9:
Tính cột cước phí: Dựa vào cột số lượng và bảng quy định trọng tải. Nếu SL nhỏ hơn trọng tải: Cước phí =SL*Đ giá. Nếu SL lớn hơn trọng tải:Cước phí = SL*Đ giá*105% (có nghĩa là tính thêm 5%). Chú ý:Muốn biết được trọng tải của xe đang tính, phải dựa vào 2 kí tự đầu của số xe và bảng quy định trọng tải. Do đó cần sử dụng hàm dò tìm theo cột, với giá trị dò tìm là 2 ký tự bên trái của số xe nhưng phải đổi sang trị số vì số xe nhập trong bảng quy định trọng tải có kiểu Number.

BTTH10:
Tính đơn giá dựa vào số điện kế (Số ĐK) và Bảng đơn giá. (Trong số ĐK: kí tự đầu bên trái hiển thị cho khu vực, ký tự bên phải cho biết loại đã đăng ký

Vui lòng xem bảng biểu ở cuối bài T_T. Trước dò tìm thì mình có sử dụng hàm Left và right nhưng nếu dùng 2 hàm này cho 2 bài kết hợp cùng hàm đk IF thì xem ra khá là dài -0-/. Đến lớp ko dc giáo viên chấp nhận T_T. Trong file đính kèm đã có sẵn câu hỏi. Mong mọi người giúp đỡ giải quyết trong thời gian sớm nhất :)
 

File đính kèm

Lần chỉnh sửa cuối:
Gởi bạn bài giải của bài tập 9 xem thử OK chưa nhé.

Gởi bạn bài giải của bài tập 10 xem thử OK chưa nhé, minh làm 2 cách để tham khảo.
 

File đính kèm

Chỉnh sửa lần cuối bởi điều hành viên:
Cảm ơn bạn rất nhiều, hóa ra phải lồng cả hàm if ở phía trước như vậy. Cảm ơn bạn rất nhiều. Có khó khăn j` trong quá trình học tập mong bạn giúp đỡ :)
 
hàm vlookup

giúp mình bài này với nhé. mình đính kèm trong file rồi. Mà mình phân vân dùng sumif hay vlookup
 

File đính kèm

C13=if(isna(vlookup(a13;$a$4:$c$5;3;0));0;vlookup(a13;$a$4:$c$5;3;0))+if(isna(vlookup(a13;$a$8:$c$10;3;0));0;vlookup(a13;$a$8:$c$10;3;0))
 
Cảm ơn bạn nhiều, nhưng mình không rõ lắm về lợi ích của hàm isna. Bạn chỉ giáo thêm nhé
 
Mục đích để khi hàm Vlookup trả về lỗi #N/A(Value refers to the #N/A (value not available) error value.) thì bỏ giá trị này và thay bằng 0. Cách dùng này chưa loại được các lỗi khác, để an toàn hơn có thể dùng hàm type (tất cả các loại lỗi đều trả về 16):

C13=if(type(vlookup(a13;$a$4:$c$5;3;0))=16;0;vlookup( a13;$a$4:$c$5;3;0))+if(type(vlookup(a13;$a$8:$c$10 ;3;0))=16;0;vlookup(a13;$a$8:$c$10;3;0))
 
Lần chỉnh sửa cuối:
Đây có phải là Vlookup kết hợp Hlookup ?

Xin các bạn xem file đính kèm. Rất mong các bạn giúp đỡ.
 

File đính kèm

Xin các bạn xem file đính kèm. Rất mong các bạn giúp đỡ.

Bạn thêm một cột phụ E như trong file đính kèm để thực hiện yêu cầu trên nhé!

(Vì dữ liệu của bạn bên cột B sheet (Khối lượng) là dạng Text và không đồng bộ nên mới cần cột phụ này đấy!)
 

File đính kèm

Phát hiện ra rắng bạn không cần đến cột phụ làm gì nữa, ô D5 gõ công thức sau
D5 = VLOOKUP($B$4,'Vat lieu'!$C$6:$M$17,ROW(E5)-1,0)
Sau đó copy công thức xuống.
Điều kiện để áo dụng công thức này là Thứ tự các cột bên sheet Vật liệu phải giống với thứ tự các dòng tháng bên sheet Khối lượng.
 
Cám ơn bạn đã cho công thức "=VLOOKUP($B$4;'Vat lieu'!$C$6:$M$17;'Khoi luong'!E5+1;0)", nhưng mình vẫn không hiểu vì sao phải có +1 ? Mong bạn giải thích giúp (mình là dân newbie mà).
 
Nếu có thể, mong bạn giải thích hàm + tham số -1 là D5 = VLOOKUP($B$4,'Vat lieu'!$C$6:$M$17,ROW(E5)-1,0). Cám ơn bạn.
 
Bạn hãy bắt đầu bằng cú pháp của hàm Vlookup nhé

Vlookup(Lookup_value,table_array,col_index_num,[range_lookup])

Bạn lưu ý chỗ tô đậm màu đỏ, tham số này để chỉ ra bạn muốn vlookup cột thứ mấy trong bảng dữ liệu, muốn lấy cột 1 thì gõ số 1, cột 2 thì gõ số 2, v.v....

Trở lại công thức của chúng ta:
VLOOKUP($B$4,'Vat lieu'!$C$6:$M$17,ROW(E5)-1,0)

Hàm ROW() trả về số thứ tự dòng của ô khai báo, ví dụ ROW(E5) = 5, ROW(E6) = 6, v.v....
Xét bảng dữ liệu của ta có Từ cột C đến cột M có 11 cột, cột đầu tiên cần lấy dữ liệu là cột tháng 03/08 tương ứng vối cột F, và tương đương với cột thứ 4 trong bảng dữ liệu ['Vat lieu'!$C$6:$M$17]

Như vậy, bạn thấy đấy, thứ tự dòng có dữ liệu đầu tiên bên sheet Khối lượng (bắt đầu từ ô E5) sẽ chênh lệch với cột đầu tiên cần vlookup số liệu (Cột F, cột thứ 4).

Do đó trong công thức, ta phải lấy Row(E5)-1 là vậy.

Tương tự với
VLOOKUP($B$4;'Vat lieu'!$C$6:$M$17;'Khoi luong'!E5+1;0)
 
Xin các bạn xem file đính kèm. Rất mong các bạn giúp đỡ.
Bạn Ca_dafi đã hướng dẫn khá nhiệt tình cho bạn rồi,tuy nhiên góp ý với bạn nên thống nhất khi nhập liệu thì việc tính toán sẽ trở nên đơn giản hơn rất nhiều.
Này nhé:bên sheet Vatlieu các tiêu đề cột bạn để là Tháng 03/2008 nhưng bên sheet khoiluong bạn lại muốn dò tìm theo Tháng 3/08.Vậy thử hỏi bạn tìm có thấy hay không.Chính vì vậy mà Ca_dafi phải đưa ra điều kiện thứ tự các cột bên sheet Vatlieu và thứ tự các dòng bên sheet khoiluong không được thay đổi.Nếu không tuân thủ điều kiện này có nghĩa giá trị cột trả về sẽ bị sai,vậy là thông đáp ứng yêu cầu mong muốn của bạn,
Khắc phục vấn đề này bạn nên đồng bộ dữ liệu tại các dòng cần tổng hợp của bạn với tiêu đề các cột bên Sheet Vatlieu,đó là việc thay vì Tháng 3/08 bạn đổi là Tháng 03/2008 và dùng công thức tổng quát đúng cho mọi trường hợp mà không cần điều kiện gì như sau:
D5=VLOOKUP($B$4,'Vat lieu'!$C$6:$J$17,MATCH('Khoi luong'!B5,'Vat lieu'!$C$2:$J$2,0),0)
Hy vọng giúp được bạn.
 
Cảm ơn sự đóng góp nhiệt tình của các bạn. Với bài trên mình đã làm được theo hàm sumif. Nhưng cho mình thắc mắc, nếu trong trường hợp của mình mà A là hai người khác nhau thì làm thế nào để excel phân biệt đó là hai người khác nhau và khôgn cộng hai người đó vào. (Hai người trên chỉ khác nhau ở số tài khoản mà thôi, chứ tên thì hoàn toàn y chang). Mong mọi người ra tay
 
Status
Không mở trả lời sau này.
Web KT

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

Back
Top Bottom