Lập công thức cho bảng tra . (1 người xem)

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

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

libowei

Thành viên mới
Tham gia
10/8/11
Bài viết
18
Được thích
0
Nhờ các bác lập dùm cho công thức bảng tra thể tích bồn chứa.yêu cầu mình có ghi rõ và có VD trong file đính kèm.Cảm ơn các bác nhiều!
 

File đính kèm

Nhờ các bác lập dùm cho công thức bảng tra thể tích bồn chứa.yêu cầu mình có ghi rõ và có VD trong file đính kèm.Cảm ơn các bác nhiều!
Tôi đề xuất chỉnh lại bảng giá trị hiệu chỉnh để thuận tiện cho việc tính toán. Bạn xem trong file.
 

File đính kèm

bạn xem đúng ý bạn chưa nha.
 

File đính kèm

Nhờ các bác lập dùm cho công thức bảng tra thể tích bồn chứa.yêu cầu mình có ghi rõ và có VD trong file đính kèm.Cảm ơn các bác nhiều!
Dùng công thức này cho j8 bạn nhé
PHP:
=vlookup(--left($i8,3),$f:$g,2,0)+offset($a$1,lookup(--left($i8,3),{1,228,471,713,955,1197},{2,12,22,2,12,22})+right($i8)-1,lookup(--left($i8,3),{1,713},{1,3}),,)
xem thêm file
 

File đính kèm

Góp vui một cách giải
=VLOOKUP(INT($I8/10),$F$4:$G$29,2,0)+OFFSET(INDIRECT(ADDRESS(LOOKUP(INT($I8/10),{0,228,471,713,955,1197},{2,12,22,2,12,22}),IF(INT($I8/10)>712,4,2))),MOD($I8,10),)
Thế nếu số dò > 1400 thì sao ?
Thân
 

File đính kèm

Lần chỉnh sửa cuối:
nếu len (i8)=5 thì công thức này ...."tèo"
híc
ô i8 chỉ có đến 1400 như yêu cầu thôi bác cò ơi nếu len=5 thì phải tìm cách khác
Nhập số 2 vô thử là thấy nó "TÈO" rồi bác Cò ơi.
đương nhiên nhập số 2 vô là teo là cái chắc rồi
tèo téo teo là do anh chàng này
=vlookup(--left($i8,3),$f:$g,2,0)
không teo thì sửa thành zầy
PHP:
=vlookup(--left($i8,3),$f:$g,2,1)+offset($a$1,lookup(--left($i8,3),{0,228,471,713,955,1197},{2,12,22,2,12,22})+right($i8)-1,lookup(--left($i8,3),{0,713},{1,3}),,)
 
Nhập số 2 vô thử là thấy nó "TÈO" rồi bác Cò ơi.
Híc
Nhập số 2 là không đúng kiểu rồi em trai ạ
Cell đó phải nhập từ 2 ==> 5 ký tự
Số cuối bên phải từ 1 đến 9
Số bên trái từ 1 đến 1400
Té ra công thức đó chỉ đúng với 4 ký tự thôi, còn "bi" nhiêu là "tèo" ráo trọi (ai biểu chơi "LÉP" chi cho "dzách việc"
Híc
 
híc
nhập số 2 là không đúng kiểu rồi em trai ạ
cell đó phải nhập từ 2 ==> 5 ký tự
số cuối bên phải từ 1 đến 9
số bên trái từ 1 đến 1400
té ra công thức đó chỉ đúng với 4 ký tự thôi, còn "bi" nhiêu là "tèo" ráo trọi (ai biểu chơi "lép" chi cho "dzách việc"
híc
vậy bác cò thích chơi 5 lon thì chiều bác lun
PHP:
=vlookup(--left($i8,len(i8)-1),$f:$g,2,1)+offset($a$1,lookup(--left($i8,len(i8)-1),{0,228,471,713,955,1197},{2,12,22,2,12,22})+right($i8)-1,lookup(--left($i8,len(i8)-1),{0,713},{1,3}),,)
ẹc ẹc
 
Híc
Nhập số 2 là không đúng kiểu rồi em trai ạ
Cell đó phải nhập từ 2 ==> 5 ký tự
Số cuối bên phải từ 1 đến 9
Số bên trái từ 1 đến 1400
Té ra công thức đó chỉ đúng với 4 ký tự thôi, còn "bi" nhiêu là "tèo" ráo trọi (ai biểu chơi "LÉP" chi cho "dzách việc"
Híc

Số 2 tức là 0cm và 2mm. Có gì đâu mà không đúng hả Bác. Kết quả sẽ là 2.86
 
Số 2 tức là 0cm và 2mm. Có gì đâu mà không đúng hả Bác. Kết quả sẽ là 2.86
Ừ nhỉ, đúng là mình "dzà dzồi", nhưng kết quả phải là 151.007 chứ
Số 0 (0cm) dò trong bảng tra được 148.147
Số 2 (2 mm) dò trong bảng hiệu chính được 2.86
Cộng 2 em này với nhau thì phải là 151.007 chứ, hay anh sai chỗ nào zị em "chai"
Híc
 
À đúng rồi. Tại em cứ suy luận theo logic thông thường, vạch 0cm thì không có gì. Quên mất cái bảng tra.
 
Cảm ơn các bác đã quan tâm.Em quên mất giá trị hiệu chỉnh ở mức 0 .Bác huuthang_bd đã sửa dùm.Bảng chỉ có giá trị trong khoảng từ mức 0cm~1400cm thôi.Có ai có cách nào khác ngắn ngắn gọn hơn không.Em cũng đã thủ với cách giống của ducinh1987 rồi,có ngắn gọn hơn chút nhưng cách này dài.Tam thời em tham khảo theo pp của bác huuthang_bd.Công thức của bác LeDuyThuong bi lỗi o một số giá trị không tham chiếu được.Nhờ các bác ra tay tiếp.

Đa tạ các bác !!!
 
Lần chỉnh sửa cuối:
Cảm ơn các bác đã quan tâm.Em quên mất giá trị hiệu chỉnh ở mức 0 .Bác huuthang_bd đã sửa dùm.Bảng chỉ có giá trị trong khoảng từ mức 0cm~1400cm thôi.Có ai có cách nào khác ngắn ngắn gọn hơn không.Em cũng đã thủ với cách giống của ducinh1987 rồi,có ngắn gọn hơn chút nhưng cách này dài.Tam thời em tham khảo theo pp của bác huuthang_bd.Công thức của bác LeDuyThuong bi lỗi o một số giá trị không tham chiếu được.Nhờ các bác ra tay tiếp.

Đa tạ các bác !!!
nếu bạn muốn công thức ngắn và bao quát thì phải sắp xếp lại dữ liệu như của huu thang
còn nếu giữu nguyên theo dữ liệu gốc thì phải dài như thế này
=VLOOKUP(IF(LEN($I8)=1,0,--LEFT($I8,LEN(I8)-1)),$F:$G,2,1)+OFFSET($A$1,LOOKUP(IF(LEN($I8)=1,0,--LEFT($I8,LEN(I8)-1)),{0,228,471,713,955,1197},{2,12,22,2,12,22})+RIGHT($I8)-1,LOOKUP(IF(LEN($I8)=1,0,--LEFT($I8,LEN(I8)-1)),{0,713},{1,3}),,)
hoặc dùng names thôi
 
Tham gia chút cho vui!
 

File đính kèm

Cũng tham gia chút với nvson, lâu rồi không gặp.
Vì tác giả ghi bảng tra có giá trị từ 0 - 1400, nên coi như nó có đủ số từ 0 - 1400 (Cột F)
(Mượn file mẫu của huuthang_bd)
 

File đính kèm

Hoặc có thể sửa lại bảng giá trị hiệu chỉnh như trong file đính kèm cho gọn.
 

File đính kèm

Cảm ơn các bác rất nhiều.Cảm phiền các bác lần nữa nhờ các bác lập dùm công thức cho bảng tra khác.Các bác xem file đính kèm.&&&%$R
 

File đính kèm

Cảm ơn các bác rất nhiều.Cảm phiền các bác lần nữa nhờ các bác lập dùm công thức cho bảng tra khác.Các bác xem file đính kèm.&&&%$R
Chu choa! đã làm được công thức rồi Protect luôn. Biết nó ra sao mà giúp nhỉ?
 
Công thức của người ta tạo bác ơi.Bảng này em coppy lai nên không biết.
 
Công thức của người ta tạo bác ơi.Bảng này em coppy lai nên không biết.
Nhập thử công thức này vào ô nào đó coi kết quả có chấp nhận được hông?
=IF(COUNT(X2:Y2)=2;OFFSET($A$1;MATCH(X2;$A$2:$A$122);MATCH(Y2;$B$1:$V$1));"")
 
Không được bác Bate ơi.File chỉ khoá cell chứa công thức thôi,cell dữ liệu nhập và chỉnh sửa được.Bác xem dùm nhé.
 
Không được bác Bate ơi.File chỉ khoá cell chứa công thức thôi,cell dữ liệu nhập và chỉnh sửa được.Bác xem dùm nhé.
Hổng hiểu câu này, nhập công thức ở bài #24 mà không được là sao?
Xem file này thử đi.
 

File đính kèm

Bác nhập thử 25.2 và 0.9900 kết quả là 0.9930 chứ không phải la 0.9932.Giá trị 25.2 gần với 25.25 nên tra theo 25.25.Yêu cầu của bài la thế.
 
Bác nhập thử 25.2 và 0.9900 kết quả là 0.9930 chứ không phải la 0.9932.Giá trị 25.2 gần với 25.25 nên tra theo 25.25.Yêu cầu của bài la thế.
Công thức của Z2 là vầy
=INDEX($B$2:$V$122,MATCH(MIN(ABS($X2-$A$2:$A$122)),ABS($X2-$A$2:$A$122),0),MATCH(MIN(ABS($Y2-$B$1:$V$1)),ABS($Y2-$B$1:$V$1),0))
Bạn thử thay cái công thức dài ngằng đó bằng cái này xem sao
Mã:
=VLOOKUP(($X2+0.125),$A:$V,MATCH($Y2,$A$1:$V$1,1),1)
 
Lần chỉnh sửa cuối:
Bác nhập thử 25.2 và 0.9900 kết quả là 0.9930 chứ không phải la 0.9932.Giá trị 25.2 gần với 25.25 nên tra theo 25.25.Yêu cầu của bài la thế.
Nếu cả cột và dòng đều tìm theo kiểu đó thì sửa công thức lại như vầy:
PHP:
=IF(COUNT(X2:Y2)=2;OFFSET($A$1;MATCH(X2+0,12;$A$2:$A$122);MATCH(Y2+0,001;$B$1:$V$1));"")
Hoặc dùng Vlookup() như Bạn Lê Như Thương:
PHP:
=IF(COUNT(X2:Y2)=2;VLOOKUP(($X2+0,12);$A$1:$V$122;MATCH($Y2+0,001;$A$1:$V$1));"")
 
Cả 2 hàm đều tìm được nhưng không đúng theo yêu cầu 2 bác ơi.Mời các bác ra tay tiếp.
 
Cả 2 hàm đều tìm được nhưng không đúng theo yêu cầu 2 bác ơi.Mời các bác ra tay tiếp.
Không đúng yêu cầu là do bạn không giải thích rõ tất cả các trường hợp xảy ra.
Đưa file đính kèm có khoảng 10 kết quả theo yêu cầu của bạn, giải thích thêm vì sao có kết quả như thế.
Nếu không thì khó có thể tiếp tục.
 
Em gửi bác Ba Te file trong đó em có ví dụ cụ thể và chú thích cách tra bảng.Bác kiểm tra dùm em.Tks Bác nhiều
 

File đính kèm

Em gửi bác Ba Te file trong đó em có ví dụ cụ thể và chú thích cách tra bảng.Bác kiểm tra dùm em.Tks Bác nhiều
So với kết quả bạn yêu cầu thì công thức tôi áp dụng trong file này là đúng rồi, còn sai chỗ nào?
Còn nữa, nếu 0.9850 thì lấy số nào trong khoảng 0.9840 - 0.9860?
 

File đính kèm

So với kết quả bạn yêu cầu thì công thức tôi áp dụng trong file này là đúng rồi, còn sai chỗ nào?
Còn nữa, nếu 0.9850 thì lấy số nào trong khoảng 0.9840 - 0.9860?

Công thức bac lập là ok nhưng một số giá trị tham chiếu lẻ không có trong bảng bắt buộc phải lấy giá trị gần nó nhất để có kết quả tối ưu.Nếu 0.9850 thì lấy số nào trong khoảng 0.9840 - 0.9860? .Bác để ý ở cùng 1 tham chiếu dòng tra theo 0.9840 va 0.9860 kết quả đa phần la giống nhau.Số khác nhau không đáng kể cũng có thể tạm chấp nhận giá trị 0.9840 hoặc 0.9860 đều tạm được (tôt hơn vẫn la giá trị 0.9860 ) .Bác thử nhập lại và kiểm chứng với kết quả tra thường + VD em chú thích.
 
Lần chỉnh sửa cuối:
Công thức bac lập là ok nhưng một số giá trị tham chiếu lẻ không có trong bảng bắt buộc phải lấy giá trị gần nó nhất để có kết quả tối ưu.Nếu 0.9850 thì lấy số nào trong khoảng 0.9840 - 0.9860? .Bác để ý ở cùng 1 tham chiếu dòng tra theo 0.9840 va 0.9860 kết quả đa phần la giống nhau.Số khác nhau không đáng kể cũng có thể tạm chấp nhận giá trị 0.9840 hoặc 0.9860 đều tạm được (tôt hơn vẫn la giá trị 0.9860 ) .Bác thử nhập lại và kiểm chứng với kết quả tra thường + VD em chú thích.
công thức này đúng y chang kết quả bạn yêu cầu
PHP:
=VLOOKUP(LOOKUP(MIN(ABS($A$2:$A$122-$X2)),$A$2:$A$122-$X2,$A$2:$A$122),$A:$V,MATCH(LOOKUP(MIN(ABS($A$1:$V$1-$Y2)),$A$1:$V$1-$Y2,$A$1:$V$1),$A$1:$V$1,0),0)
 
Không được bác Bate ơi.File chỉ khoá cell chứa công thức thôi,cell dữ liệu nhập và chỉnh sửa được.Bác xem dùm nhé.
Công thức trong file không sai. Khi không nhập giá trị vào công thức hiểu là X = 0 và Y = 0, lấy giá trị gần nhất là X = 25 và Y = 0.95. Tra bảng được kết quả là 0.9928
Chỉ có điều công thức trong file là công thức mảng. Công thức bên dưới là công thức bình thường và chèn thêm điều kiện khi không có dữ liệu.
Mã:
=IF(COUNTBLANK(X2:Y2),"",VLOOKUP(MROUND(MAX(MIN(X2,55),25),0.25),$A$2:$V$122,MATCH(MROUND(MAX(MIN(Y2,0.99),0.95),0.002),$A$1:$V$1,0),0))
Nhập thử công thức này vào ô nào đó coi kết quả có chấp nhận được hông?
=IF(COUNT(X2:Y2)=2;OFFSET($A$1;MATCH(X2;$A$2:$A$12 2);MATCH(Y2;$B$1:$V$1));"")
Hình như công thức của anh Ba nhầm chỗ màu đỏ.
 

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

Back
Top Bottom