Hỏi về hàm cơ sở dữ liệu ? (Giúp minh với các bạn)

Liên hệ QC

huydaica87

Thành viên mới
Tham gia
10/11/06
Bài viết
2
Được thích
0
Giúp minh với các bạn

mình đang có bài tập excel (ở bài 2) mà không hiểu gì hết về hàm CSDL
Nhờ các bạn giải giúp với
 

File đính kèm

Chỉnh sửa lần cuối bởi điều hành viên:
Tổng là sum()
Đếm là count()
lớn nhất là max()
nhỏ nhất là min()
trích n ký tự bên trái là left(;n)
trích n ký tự bên phải là right(;n)
điều kiện là if(;;)
nhiều điều kiện là if( and( đk1;đk2);;) hoặc if( or( đk1;đk2);;)
thí dụ: Tổng số tiền mà phòng hạng A đã cho thuê: =SUM(IF(RIGHT(F5:F14;1)="A";H5:H14;0))
Ctl + Shf + enter
thí dụ 2: Tính tiền phòng lớn nhất mà phòng L1 thu được = MAX(IF(LEFT(F5:F14;2)="L1";H5:H14;0))
Ctl + Shf + enter
Bạn làm thử xem.
 
Em đang bị kẹt ở chỗ tính tổng số ngày lưu trú tháng 5 và tháng 6, vì có trường hợp tổng số ngày lưu trú có cả tháng 5 và tháng 6. Bác nào có cách tính nào không xin chỉ giúp!
 

File đính kèm

Lần chỉnh sửa cuối:
salam đã viết:
Em đang bị kẹt ở chỗ tính tổng số ngày lưu trú tháng 5 và tháng 6, vì có trường hợp tổng số ngày lưu trú có cả tháng 5 và tháng 6. Bác nào có cách tính nào không xin chỉ giúp!
Bạn Salam công thức tính Max, Min của bạn chưa đúng bạn xem lại nhé. Mình đã làm xong, các bạn xem thử góp ý để công thức gọn hơn. Công thức mình làm hơi bị dài.
 

File đính kèm

Gợi ý bạn 1 cách trong tháng 5 nha! Đầu tiên bạn đặt name:
Mã:
CT=DATE(YEAR(bai2!$C$5:$C$14),MONTH(bai2!$C$5:$C$14)+1,0)
Mã:
TH5=IF(bai2!$D$5:$D$14>CT,CT,bai2!$D$5:$D$14)
Tiếp theo đễ tính tổng ngày lưu trú trong tháng 5 thì dùng công thức mãng:
Mã:
=SUM(IF(MONTH($C$5:$C$14)=5,TH5-($C$5:$C$14)+1,0))
Tháng 6 tương tự!
ANH TUẤN
 
Lần chỉnh sửa cuối:
anhtuan1066 đã viết:
Gợi ý bạn 1 cách trong tháng 5 nha! Đầu tiên bạn đặt name:
Mã:
CT=DATE(YEAR(bai2!$C$5:$C$14),MONTH(bai2!$C$5:$C$14)+1,0)
Mã:
TH5=IF(bai2!$D$5:$D$14>CT,CT,bai2!$D$5:$D$14)
Tiếp theo đễ tính tổng ngày lưu trú trong tháng 5 thì dùng công thức mãng:
Mã:
=SUM(IF(MONTH($C$5:$C$14)=5,TH5-($C$5:$C$14)+1,0))
Tháng 6 tương tự!
ANH TUẤN
Bạn anhtuan1066 tính thiếu trường hợp cột C ngày nhỏ tháng 5 nhưng ở cột D ngày lớn hơn hoặc bằng tháng 5
 
Bạn anhtuan1066 tính thiếu trường hợp cột C ngày nhỏ tháng 5 nhưng ở cột D ngày lớn hơn hoặc bằng tháng 5
Thì bạn cứ thử đi... trong name này đã có tất cả các điều kiện rồi...
Trong file dùng công thức của tôi sẽ ra kết quả tổng ngày lưu trú tháng 5 là 27... Các bạn có thể tính nhẩm thử xem!
ANH TUẤN
 
Lần chỉnh sửa cuối:
Cám ơn bác Vietanhu đã chỉ bảo. em xem công thức của bác thấy yêu cầu ở STT 7 và 9 bạn ấy muốn số liệu TR hoặc L1, A hoặc B theo em hiểu là một trong hai DK ấy chứ không bao gồm cả hai không biết có đúng không bác. Cám ơn bác Tuan cách đặt Name của bác rất hay công thức trông gọn đi rất nhiều.
 
anhtuan1066 đã viết:
Thì bạn cứ thử đi... trong name này đã có tất cả các điều kiện rồi...
Trong file dùng công thức của tôi sẽ ra kết quả tổng ngày lưu trú tháng 5 là 27... Các bạn có thể tính nhẩm thử xem!
ANH TUẤN
Trong trường hợp của bài toán này thì công thức của bạn anhtuan1066 cho ra kết quả đúng nhưng nếu bạn thử đổi một ngày ở cột C vd là ngày 12/04/2002 và tương ứng ở cột D bạn để ngày là 15/07/2002 thì kết quả sẽ ra sai đó.
 
Trời đất ơi... bạn gì đó ơi... hic... hic...
Thứ nhất đây chỉ là bài tập...
Thứ hai: Tôi nói rõ ràng là
Gợi ý bạn 1 cách trong tháng 5 nha
Đây chỉ là gợi ý... bạn muốn chi tiết thế nào thì tự mình phát triển chứ... Mấu chốt trong đây là XÁC ĐỊNH NGÀY CUỐI THÁNG
Chẳng lẽ muốn tôi giãi cả bài trong tất cả các trường hợp cụ thể nhất! Thế thì còn gì thú vị so với việc bạn tự giãi nữa...
 
anhtuan1066 đã viết:
Trời đất ơi... bạn gì đó ơi... hic... hic...
Thứ nhất đây chỉ là bài tập...
Thứ hai: Tôi nói rõ ràng là
Đây chỉ là gợi ý... bạn muốn chi tiết thế nào thì tự mình phát triển chứ... Mấu chốt trong đây là XÁC ĐỊNH NGÀY CUỐI THÁNG
Chẳng lẽ muốn tôi giãi cả bài trong tất cả các trường hợp cụ thể nhất! Thế thì còn gì thú vị so với việc bạn tự giãi nữa...
He He xin lỗi đã làm bạn Anh Tuấn khó chịu. Tôi cũng mới biết về công thức mảng, đang học hỏi các bạn nên thắc mắc nhiều. Cách đặt name của bạn rất hay làm công thức gọn.
 
Ko có đâu bạn ơi... Có gì đâu mà khó chịu... hi.. hi... (tại cách nói của tôi nó quen vậy đấy)...
Có lẽ bạn mới vào GPE nên chưa biết thôi... Ở đây ai cũng nhiệt tình trợ giúp mọi người... Mục đích là giúp nhau cùng tiến đễ bạn mình có thể tự làm giống mình.. (chứ ko phải là copy cái người khác đã làm)...
Vẫn rất mong các bạn có nhiều câu hỏi thêm nữa, càng kỳ lạ và hay thì càng tốt.. đễ bài vở của GPE ngày càng phong phú thêm
Mến
ANH TUẤN
 
anhtuan1066 đã viết:
Mấu chốt trong đây là XÁC ĐỊNH NGÀY CUỐI THÁNG...

1. Ngày cuối tháng:
- cùng tháng với ngày cần tìm: = eomonth(ngày;0)
- tháng sau: eomonth(ngày;1)
- tháng trước: eomonth(ngày;-1)

eomonth là hàm của Excel

2. Số ngày trong tháng n (trong cột begindate):
=if(month(begindate)=n; eomonth(begindate;0)-begindate+1;0)
3. Số ngày trong tháng m (trong cột enddate):
=if(month(enddate)=m;day(enddate);0)
4. Số ngày trong các tháng giữa tháng n và tháng m:
=eomonth(endate;-1)-eomonth(begindate;0)

Ở đây chỉ cần dùng công thức 2 và 3 cộng lại cho bài tập này
 
Lần chỉnh sửa cuối:
Đây là áp dụng cho tất cả.. và ai cũng làm dc... Bạn cứ thử đi, nếu dùng EOMONTH sẽ có ngày đó người ta la làng rằng "Sao tôi dùng hàm EOMONTH ko dc, nó báo #VALUE".... Đó là vì ko phải trên máy ai cũng có Alnalysis Toolpak đâu bạn à.. Và việc cài thì ko phải ai cũng biết...
Còn cách của tôi là cách thông dụng nhất, sẽ ko bao giờ có chuyện la làng...
Ko riêng gì trường hợp này mà hầu hết mọi file các bạn gữi lên cũng phải tính đến trường hợp AI CŨNG DÙNG DC (trừ trường hợp bất khả kháng)...
Dẩn chứng về các hàm ngày tháng và SUBTOTAL là 1 ví dụ cụ thể... Các bạn cứ suy nghĩ kỹ xem!
 
anhtuan1066 đã viết:
Đó là vì ko phải trên máy ai cũng có Alnalysis Toolpak đâu bạn à.. Và việc cài thì ko phải ai cũng biết...
Trên diễn đàn có vô số bài hướng dẫn cài addin mà bạn.
anhtuan1066 đã viết:
Dẩn chứng về các hàm ngày tháng và SUBTOTAL là 1 ví dụ cụ thể...
subtotal là addin sao?
còn solver không phải sao? cả đống bài solver trên diễn đàn đấy chứ?
Xin lỗi vì tớ trích đoạn :
Mấu chốt trong đây là XÁC ĐỊNH NGÀY CUỐI THÁNG...

Tớ chỉ là đồng ý rằng mấu chốt của bài toán đúng là ở đó và tớ trích, của ai cũng vậy thôi. Và tớ tham gia giải quyết mấu chốt đó như mọi thành viên khác có quyền tham gia.

Bạn nghĩ ai cũng dùng được VBA à? hay chỉ xin về xài đúng 1 chuyện, gặp chuyện khác xin tiếp?

Mong bạn cũng nghĩ lại, tớ cũng sẽ nghĩ lại.
 
Có lẽ bạn chưa rõ ý tôi nói... Ý tôi muốn nói rằng: "TẠO CÔNG THỨC SAO CHO AI CŨNG DÙNG DC, DÙ LÀ VERSION OFFICE NÀO"... Bạn hiểu rồi chứ...
Subtotal(103....) với Subtotal(3....) có gì khác nhau? Và Version nào thì chạy dc với Subtotal nào? Bạn nghĩ xem
Cái từ AI CŨNG DÙNG DC tôi dùng ở đây bạn đã nghĩ đi quá xa rồi đấy!... Nói riêng với SUBTOTAL thì bạn cứ nghĩ xem có cách nào tạo ra công thức này mà tôi dùng OfficeXP cũng xài dc.. và bạn dùng Office2003 hoặc 2007 cũng dùng dc...
Và còn nhiều thứ khác nữa cần lưu ý...
Add-Ins trên GPE này hướng dẩn rất nhiều, tôi đồng ý... Nhưng chỉ sợ bạn sẽ mất công post bài giãi thích đủ thứ thôi ấy chứ... ha... ha...
Quan trọng hơn nữa là tôi đâu có nói bạn sai... chỉ lưu ý về tính đại chúng trong việc tạo công thức...
ANH TUẤN
 
1. Sub total mà tớ giới thiệu không phải là gõ côngthức, mà là dùng chức năng sub total trong menu, cái này từ Office 97 đã có rồi không lý gì 2000 hay Xp gì gì lại không xài đựoc.
2. các hàm ngày tháng như eomonth, edate đúng là addin không phải ai cũng có, và không phải ai cũng có đk để cài. Nhưng tớ góp vào 1 cách, mỗi người góp 1 cách khác nhau, ai dùng được gì thì dùng chứ!

thí dụ dùng hàm networkday của 1 bạn trên diễn đàn, công thức ngắn còn 1/5, ai mà có addín sẵn hay có thể cài addin thì dùng, chẳng tiện hơn là gõ 1 hơi công thức dài ngoằng sao? Chưa nói là dùng VBA đi xin mà chẳng hiểu câu cú trong đó có tác dụng gì.

Hì hì, đây cũng chỉ là quan điểm khác nhau mà thôi phải không bạn?

Vậy thì bạn biết gì thì giúp dỡ người khác cái đó, tớ cũng vậy, người khác cũng vậy, bà con coi cái nào tiện thì dùng, nhỉ? Coi như để bà con làm giám khảo dù chúng ta chẳng quan tâm đến chuyện hơn kém nhau, phải không nào?

Rất mong bạn đồng ý và chấm dứt tranh luận tại box này.
 
Web KT

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

Back
Top Bottom