công thức choose này sai lỗi gì

Liên hệ QC

khanhnth02

Thành viên thường trực
Tham gia
5/8/07
Bài viết
324
Được thích
35
tôi có hàm này mà sao không chạy được: =choose($L$1,I.1,I.1:I.2,I.1:I.3)
VỚI I.1 , I.2, I.3 đặt trong define name
I.1=sumif(A1:A5,B1,C1:C5)
I.2=sumif(A6A:10,B2,C6:C10)
I.3=sumif(A11:A15,B3,C11:C15)
MONG CÁC TIỀN BỐI CHỈ GIÚP
 
tôi có hàm này mà sao không chạy được: =choose($L$1,I.1,I.1:I.2,I.1:I.3)
VỚI I.1 , I.2, I.3 đặt trong define name
I.1=sumif(A1:A5,B1,C1:C5)
I.2=sumif(A6A:10,B2,C6:C10)
I.3=sumif(A11:A15,B3,C11:C15)
MONG CÁC TIỀN BỐI CHỈ GIÚP
Công thức của bạn là:
choose($L$1,I.1,I.1:I.2,I.1:I.3)
Có dấu 2 chấm trong này nghĩa là giống gì vậy --> Làm sao Excel nó hiểu?
 
: có nghĩa là , tính sum từ I.1 đến I.2 và ...I.1 đến I.3 (tức là I.1+I.2+I.3...) còn nhiều nên phải làm sao ngắn lại chẳng hạn (I.1:I.12), tôi có 12 tháng
 
: có nghĩa là , tính sum từ I.1 đến I.2 và ...I.1 đến I.3 (tức là I.1+I.2+I.3...) còn nhiều nên phải làm sao ngắn lại chẳng hạn (I.1:I.12), tôi có 12 tháng
Đó là bạn "tưởng tượng" và nghĩ thế thôi! Excel nó cho đó là SAI CÚ PHÁP
 
Hậu bối có thể tham khảo hàm SWITCH() trong VBA

: có nghĩa là , tính sum từ I.1 đến I.2 và ...I.1 đến I.3 (tức là I.1+I.2+I.3...) còn nhiều nên phải làm sao ngắn lại chẳng hạn (I.1:I.12), tôi có 12 tháng

Cú fáp đại loại là

GPE_COM = SWITCH(Coi<=1, 5, Coi =2, 9, Coi<=8, 10)
 
Chỉnh sửa lần cuối bởi điều hành viên:
file này tóm tắt nên tôi lượt bớt đi để dễ tải

file này tóm tắt nên tôi lượt bớt đi để dễ tải. mong có cách nào hay hơn để gọn nhẹ hơn. file nói về kế toán nhập- xuất- tồn hàng hoá ở đơn vị tôi
 

File đính kèm

file này tóm tắt nên tôi lượt bớt đi để dễ tải. mong có cách nào hay hơn để gọn nhẹ hơn. file nói về kế toán nhập- xuất- tồn hàng hoá ở đơn vị tôi
Lưu ý:
- Công thức trong name của bạn bị lỗi hết, biết đâu mà giúp đây (Lỗi từ R.2I.2 trở đi)
- Có đưa file lên cũng tưởng đối tổng quát 1 chút chứ! Dữ liệu có mấy dòng nằm trong 1 tháng nên cũng không đoán được gì
- Tôi nghĩ chắc bạn muốn SUM theo 2 điều kiện: Mã và Tháng, đúng không? ---> Thế thì SUMPRODUCT cho rồi, cần quái gì đặt name tè lè thế kia! Ngoài ra, nếu dữ liệu bố trí hợp lý, ta dùng PivotTable là ăn chắc (nhẹ máy)
 
file này tóm tắt nên tôi lượt bớt đi để dễ tải. mong có cách nào hay hơn để gọn nhẹ hơn. file nói về kế toán nhập- xuất- tồn hàng hoá ở đơn vị tôi

Một mớ name rối tung cả lên (tôi chỉ xem được name I.1).
Chỉ hiểu lơ tơ mơ, bạn thử công thức sau xem đúng không?
- RECEIVE - Tại G4 dùng:
PHP:
=SUMPRODUCT(('R'!$E$5:$E$13=B!$B4)*(MONTH('R'!$A$5:$A$13)=B!$I$1)*'R'!$H$5:$H$13)
- ISSUED - Tại H4 dùng:
PHP:
=SUMPRODUCT((I!$E$5:$E$15=B!$B4)*(MONTH(I!$A$5:$A$15)=B!$I$1)*I!$H$5:$H$15)
 
tôi có đến vài ngàn dòng nên đã dùng thử sumproduct rồi, không thể chạy nổi, nói như bạn đúng rồi theo 2 dk mã và tháng, . làm sao có thể tính được sum từ I.1 đến I.12 (trong name define name)
 

File đính kèm

tôi có đến vài ngàn dòng nên đã dùng thử sumproduct rồi, không thể chạy nổi, nói như bạn đúng rồi theo 2 dk mã và tháng, . làm sao có thể tính được sum từ I.1 đến I.12 (trong name define name)
Nói thiệt, muốn giúp lắm (vì dạng bài này tôi đã từng làm)... Có điều dữ liệu có tí xíu nên chẳng biết giúp thế nào!
File có đủ 12 tháng và name đầy đủ không bị lỗi rồi hẳn tính
 
Lần chỉnh sửa cuối:
vì file quá lớn nên fai làm vậy, gửi trên này có được đâu. thử lại lần nữa đi, tôi mở được mà
vô loggin với name khanhnth02@yahoo.com
pass:910176
 
Lần chỉnh sửa cuối:
Công thức của bạn
=CHOOSE($I$1,R.1,R.1+R.2,R.1+R.2+R.3,R.1+R.2+R.3+R .4,R.1+R.2+R.3+R.4+R.5,R.1+R.2+R.3+R.4+R.5+R.6,R.1 +R.2+R.3+R.4+R.5+R.6+R.7,R.1+R.2+R.3+R.4+R.5+R.6+R .7+R.8,R.1+R.2+R.3+R.4+R.5+R.6+R.7+R.8+R.9,R.1+R.2 +R.3+R.4+R.5+R.6+R.7+R.8+R.9+R.10,R.1+R.2+R.3+R.4+ R.5+R.6+R.7+R.8+R.9+R.10+R.11,R.1+R.2+R.3+R.4+R.5+ R.6+R.7+R.8+R.9+R.10+R.11+R.12)
Nhìn công thức này của bạn khó hiểu thật, Bạn nêu yêu cầu của bài toán để xem có thể làm bằng cách khác không. Cách này khó phức tạp quá
 
Không thể nào đăng nhập được. Bạn gửi vào Email ở chữ ký của mình rồi mình load cho.
Rất có thể nên tìm con đường khác còn cách của bạn đến 1 loạt tên như vậy trông đã khiếp.
 
Lần chỉnh sửa cuối:
vì file quá lớn nên fai làm vậy, gửi trên này có được đâu. thử lại lần nữa đi, tôi mở được mà
vô loggin với name khanhnth02@yahoo.com
pass:910176
Hình như bạn không biết dùng Mediafire thì phải
Sau khi post file lên Mediafile, nếu muốn share cho mọi người thì phải:
- Bấm nút Share

untitled1.JPG


- Trang web sẽ hiển thị link share nằm bên dưới

untitled2.JPG

- Copy Sharing URL rồi paste lên diễn đàn
- Link file của bạn đây: http://www.mediafire.com/?10z9k6nikjk4j2s
---------------------
Tôi đã xem qua file của bạn và chưa hiểu tại sao bạn lại chia ra nhiều name để làm gì:
Ví dụ:
Name I.1 của bạn =SUMIF(I!$E$5:$E$1000,B!$B4,I!$H$5:$H$1000)
Name I.2 của bạn =SUMIF(I!$E$1001:$E$2000,B!$B4,I!$H$1001:$H$2000)
vân vân... (có 12 name)
Và công thức của bạn tại cell H4 của sheet B
PHP:
=CHOOSE($I$1,I.1,I.1+I.2,I.1+I.2+I.3,I.1+I.2+I.3+I.4,I.1+I.2+I.3+I.4+I.5,I.1+I.2+I.3+I.4+I.5+I.6,I.1+I.2+I.3+I.4+I.5+I.6+I.7,I.1+I.2+I.3+I.4+I.5+I.6+I.7+I.8,I.1+I.2+I.3+I.4+I.5+I.6+I.7+I.8+I.9,I.1+I.2+I.3+I.4+I.5+I.6+I.7+I.8+I.9+I.10,I.1+I.2+I.3+I.4+I.5+I.6+I.7+I.8+I.9+I.10+I.11,I.1+I.2+I.3+I.4+I.5+I.6+I.7+I.8+I.9+I.10+I.11+I.12)
Vậy 12 name ấy tôi sẽ sửa lại thành 1 name như sau:
PHP:
IRng =OFFSET(I!$E$1,,,1000*B!$I$1,)
Và công thức tại cell H4 của sheet B là:
PHP:
=SUMIF(IRng,B4,OFFSET(IRng,,3))
Có phải ngắn gọn hơn không?
Tương tự thế cho các name còn lại
Hic... Công thức cả rừng, muốn sửa cũng thấy... ngán
--------------------------
Thử sửa cái xem thế nào ---> Còn 2 name thôi
 

File đính kèm

Lần chỉnh sửa cuối:
thật là tuyệt , cảm ơn anh nhiều, nhưng mà thân dân ngu muội quá , a có thể giải thích công thức này rõ được không để e hiểu thêm ấy mà.
mà hình như e thử lại rồi thấy bị sai số liệu, chẳng hạn nếu để tháng 3 (I = 3) thì số liệu không khớp , mong anh chỉ rõ hơn.
 

File đính kèm

Lần chỉnh sửa cuối:
thật là tuyệt , cảm ơn anh nhiều, nhưng mà thân dân ngu muội quá , a có thể giải thích công thức này rõ được không để e hiểu thêm ấy mà.
mà hình như e thử lại rồi thấy bị sai số liệu, chẳng hạn nếu để tháng 3 (I = 3) thì số liệu không khớp , mong anh chỉ rõ hơn.
Có thể cho tôi biết nó không khớp tại cell nào không? Tôi kiểm tra đâu có thấy gì không ổn đâu
(Lưu ý: trong file của bạn, tại cell H7 của sheet B là dữ liệu thô, không phải công thức nha)
 
file đây anh , nhờ anh xem cho

file đây anh , nhờ anh xem cho, những ô bôi màu vàng
 

File đính kèm

file đây anh , nhờ anh xem cho, những ô bôi màu vàng
Bạn phải nói cho tôi biết kết quả đúng là bao nhiêu chứ!
Chổ bạn bôi màu vàng là cell K5
- Khi I1 = 2 thì công thức của bạn cho kết quả = 144 (tại K5) ---> Công thức của tôi cũng thế
- Khi I1 = 3 thì công thức của bạn cho kết quả = 50 (tại K5) ---> Công thức của tôi cũng thế
Thế sai chổ nào đây?
 
Bạn phải nói cho tôi biết kết quả đúng là bao nhiêu chứ!
Chổ bạn bôi màu vàng là cell K5
- Khi I1 = 2 thì công thức của bạn cho kết quả = 144 (tại K5) ---> Công thức của tôi cũng thế
- Khi I1 = 3 thì công thức của bạn cho kết quả = 50 (tại K5) ---> Công thức của tôi cũng thế
Thế sai chổ nào đây?
Chỗ đó không sai nhưng sẽ có những chỗ khác sai. Tôi nghĩ name phải như thế này mới đúng:
Mã:
IRng=OFFSET(I!$E$5,,,1000*B!$I$1-4,)
Mã:
RRng=OFFSET('R'!$E$5,,,B!$I$1*200-4,)
Mà nhìn dữ liệu này thấy kỳ ghê. Dữ liệu trong một tháng chỉ phát sinh đúng 1000 dòng và bắt đầu từ dòng nào tới dòng nào là cố định luôn. Quá chuẩn :))
 
Chỗ đó không sai nhưng sẽ có những chỗ khác sai. Tôi nghĩ name phải như thế này mới đúng:
Mã:
IRng=OFFSET(I!$E$5,,,1000*B!$I$1-4,)
Mã:
RRng=OFFSET('R'!$E$5,,,B!$I$1*200-4,)
Mà nhìn dữ liệu này thấy kỳ ghê. Dữ liệu trong một tháng chỉ phát sinh đúng 1000 dòng và bắt đầu từ dòng nào tới dòng nào là cố định luôn. Quá chuẩn :))
Có thể sai trong trường hợp sheet R và I có ghi gì đó ở 4 dòng đầu tiên (ở cột E và H) ---> Nhưng dù là thế cũng rất khó sai lắm, vì nó phải tra đúng MÃ thì mới SUMIF cơ mà
 
Lần chỉnh sửa cuối:
Web KT

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

Back
Top Bottom