Chuyên đề giải đáp các bài tập (Phần 2) (1 người xem)

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

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

Status
Không mở trả lời sau này.
Mong anh chị giúp đỡ giúp em bài tập này, em không hiểu câu 2 và 3

Anh chị giúp em giải quyết bài tập này, câu 2 và 3 em không biết làm, em làm hoài mà không ra. hic hic :(
 

File đính kèm

Anh chị giúp em giải quyết bài tập này, câu 2 và 3 em không biết làm, em làm hoài mà không ra. hic hic :(
bạn xem vậy được chưa,
câu 2: phần "Over country" mình ko biết lấy data ở đầu
câu 3: mình lấy data cho sheet HCM, còn sheet HN bạn tự làm nha
 

File đính kèm

trước hết em cám ơn anh ba tê, không biệt hậu tạ a thế nào luôn hihihihih
muốn hâu tạ thì link 1 cái cảm ơn phía dưới để người trở giúp được biết là đã nhận được sự trở giúp thế là được rồi <văn hoá lịch sự thây lời hậu tạ>
phải ko anh Ba Tê
 
Anh chị giúp em giải quyết bài tập này, câu 2 và 3 em không biết làm, em làm hoài mà không ra. hic hic :(
làm kô ra mà còn cười được sao???, bài trên tổng 2, và 3 điều kiện, nếu bạn dùng office 2007 về sau bạn có thể sử dụng hàm sumifs để giải quyết câu 2 và câu 3, nếu bạn là office 2003 về trước thì dùng sumproduct của nhapmon đã giải, và phần over country thì làm tương tự như hà nội và hồ chí minh (nếu có)
còn câu 3 nếu mình đoán ko nhầm thì là tổng của hà nội và thành phố hồ chí mình, theo công thức của nhanmon bổ sung thêm :
=SUM(SUMPRODUCT((HCMModel=$B56)*(Month=C$55)*(HCMQty)),SUMPRODUCT((HnModel=$B56)*(HNmonth=C$55)*(HNQty)))

cái màu đỏ đỏ nhapmon chưa có đặt tên bạn thêm chọn vùng và đặt tên vào nhé
 
Oánh dấu cái vì ngưỡng mộ các tài năng đã lâu mà chưa có dịp thọ giáo :D
 
Giúp em bài tập này với

ở sheet 2 có cái phần tính học bổng. yêu cầu của nó là: tính học bổng cho những bạn có điểm >=8 và hạnh kiểm tốt.Ai không đạt thì không được điền.
Bài đây ạ:
HTML:
http://www.mediafire.com/view/?kfnecvcfv6mb080
 
ở sheet 2 có cái phần tính học bổng. yêu cầu của nó là: tính học bổng cho những bạn có điểm >=8 và hạnh kiểm tốt.Ai không đạt thì không được điền.
Bài đây ạ:
HTML:
http://www.mediafire.com/view/?kfnecvcfv6mb080

bạn đổi sang khung lớn rồi gửi file excel lên... theo đề miêu tả có thể dùng hàm if được đó.
 
Đây là ý kiến cá nhân của em, em mới học nên còn gà lắm. Nếu có sai mọi người chỉ dùm em để em còn biết zới. Em cảm ơn.
Mình thấy cột học bổng bạn anhlapro123321 làm rồi còn gì. Mình đành viết tạm sang cột bên cạnh zậy.
tính học bổng cho những bạn có điểm >=8 và hạnh kiểm tốt
 

File đính kèm

Cảm ơn A_Lang_9300 nha, Mình mới học nên cái gì rắm 1 tý là mù luôn :D
 
View attachment New Microsoft Excel Worksheet.xlsCác bạn giúp mình cái này với. Tổng hợp giúp mình dữ liệu từ các sheet về 1 sheet như file excel của mình dươi đây với. Mình không biêt về macro. Mình cám ơn nhiều lắm, mình đang cần gấp mong các bạn giúp mình
 

File đính kèm

Lần chỉnh sửa cuối:
tìm giá trị thỏa mản 1 hoặc nhiều ĐK (code VBA)

Xem tạm file này coi có xài được không. Hình như có gì đó chưa ổn lắm.
e có bài này củng gần giống với bài trước nhưng hơi khác 1 chút (nhờ các anh, chị cho em xin code VBA cho bài này nhé)
 

File đính kèm

liệt kê giá trị và sắp xếp từ lớn đến nhỏ

em muốn lấy số tiền của 10 tên hàng và số lượng khi thỏa mản 2 điều kiện "bo phan" và "thang/nam" và số tiền sắp xếp theo giá trị từ lớn đến nhỏ.nhờ các anh chi giúp
nếu viết không viết bằng công thức được thì bằng code VBA cũng được.
 
em muốn lấy số tiền của 10 tên hàng và số lượng khi thỏa mản 2 điều kiện "bo phan" và "thang/nam" và số tiền sắp xếp theo giá trị từ lớn đến nhỏ.nhờ các anh chi giúp
nếu viết không viết bằng công thức được thì bằng code VBA cũng được.

chỗ màu đỏ ấy, chắc bạn phải gửi file lên mọi người mới giúp được ạ.
 

File đính kèm

các pro ơi, giải quyết giúp em bài này phát :(
Yêu cầu của bài là 1. CSS point= (4xGeneral Point)+ (Detail point x80/max detail point) biết CSS point=100, 2 là nếu ở phần Detail ô nào rỗng thì bỏ qua nhưng ở Phần General là bắt buộc phải điền, ko điền thì nhắc ng ta điền lại. 3 là nếu tích vào 2 ô thì lấy point ở ô cao điểm hơn. Nếu điểm CSS thấp hơn 50 thì hiện số đỏ
 

File đính kèm

File đính kèm

Bạn tham khảo file này nhé
bạn ơi cám ơn bạn đã viết công thức giúp mình, nhưng yêu cầu của mình không phải như đáp án của bạn,
mình cần liệt kê 10 "tên hàng" bao gồm số lượng và "số tiền" của 10 tên hàng đó
trong đó cột số tiền được sắp xếp theo thứ tự từ lớn đến nhỏ, vi du: 700,500,300.... và nếu như không có đủ 10 tên hàng thì các dòng còn lại là trống, hoặc số 0,mà công thức của bạn viết mình thấy thừa ra luôn là 11 tên hàng chư không phải 10 , Ơ BÀI GIẢ CỦA BẠN MÌNH ĐÃ ĐỔI SMALL THÀNH LARGE THÌ ĐÃ THEO ĐÚNG Ý CỦA MÌNH, NHƯNG MÌNH CẦN 10 "tên hàng" thôi và nếu không có đủ thì các dòng còn lại là "" hoăc 0
bạn giup mình nhé
cám ơn bạn nhìu
 
Lần chỉnh sửa cuối:
bạn ơi cám ơn bạn đã viết công thức giúp mình, nhưng yêu cầu của mình không phải như đáp án của bạn,
mình cần liệt kê 10 "tên hàng" bao gồm số lượng và "số tiền" của 10 tên hàng đó
trong đó cột số tiền được sắp xếp theo thứ tự từ lớn đến nhỏ, vi du: 700,500,300.... và nếu như không có đủ 10 tên hàng thì các dòng còn lại là trống, hoặc số 0,mà công thức của bạn viết mình thấy thừa ra luôn là 11 tên hàng chư không phải 10 , Ơ BÀI GIẢ CỦA BẠN MÌNH ĐÃ ĐỔI SMALL THÀNH LARGE THÌ ĐÃ THEO ĐÚNG Ý CỦA MÌNH, NHƯNG MÌNH CẦN 10 "tên hàng" thôi và nếu không có đủ thì các dòng còn lại là "" hoăc 0
bạn giup mình nhé
cám ơn bạn nhìu

Đúng ra bài này dùng PivotTable để tổng hợp là nhanh gọn nhất. Có thể lấy ra top 10 và sort tùy ý
Tuy nhiên phải hỏi lại: 1 tên hàng nhưng có nhiều số lượng, nhiều số tiền thì có cộng dồn lại không? (mà lý nào lại không cộng dồn nhỉ?)
 
Xin nhờ các anh chị giúp Hàm Vlookup trong shet IN bị lỗi với
 

File đính kèm

bạn ơi cám ơn bạn đã viết công thức giúp mình, nhưng yêu cầu của mình không phải như đáp án của bạn,
mình cần liệt kê 10 "tên hàng" bao gồm số lượng và "số tiền" của 10 tên hàng đó
trong đó cột số tiền được sắp xếp theo thứ tự từ lớn đến nhỏ, vi du: 700,500,300.... và nếu như không có đủ 10 tên hàng thì các dòng còn lại là trống, hoặc số 0,mà công thức của bạn viết mình thấy thừa ra luôn là 11 tên hàng chư không phải 10 , Ơ BÀI GIẢ CỦA BẠN MÌNH ĐÃ ĐỔI SMALL THÀNH LARGE THÌ ĐÃ THEO ĐÚNG Ý CỦA MÌNH, NHƯNG MÌNH CẦN 10 "tên hàng" thôi và nếu không có đủ thì các dòng còn lại là "" hoăc 0
bạn giup mình nhé
cám ơn bạn nhìu
+1) Thật là không hiểu ý bạn. Với dữ liệu Nsu - 1.2012 sau khi trích lọc tôi thấy có 11 tên hàng đúng như công thức => vậy 10 tên hàng là như thế nào? Nếu thích 10 thì chỉ cho 10 dong công thức là xong lúc đó sai là cái chắc
+2) Để bắt lỗi công thức bạn cho đoạn sau vào đầu tất cả công thức (chú ý kết thúc Ctrl + Shift + Enter)
Mã:
=IF(COUNT(Tien)<ROW(1:1),"",
 
Xin nhờ các anh chị giúp Hàm Vlookup trong shet IN bị lỗi với
Bạn nhấn Ctrl+F3, xem lại name LuuData sẽ thấy bảng này chỉ có 40 cột (dựa vào tham số cuối của hàm OFFSET). Trong khi đó, công thức tại các hàng 15 và 16 (ở các ô bị lỗi #REF), tham số thứ 3 của VLOOKUP lại là các số lớn hơn 40. Chính vì vậy mới xuất hiện lỗi #REF. Cách khắc phục: Thay đổi số 40 trong name LuuData.
Còn tại ô D15, vấn đề là ở tham số thứ 2 của VLOOKUP. Bạn sửa lại cho phù hợp là được.
 
Bạn nhấn Ctrl+F3, xem lại name LuuData sẽ thấy bảng này chỉ có 40 cột (dựa vào tham số cuối của hàm OFFSET). Trong khi đó, công thức tại các hàng 15 và 16 (ở các ô bị lỗi #REF), tham số thứ 3 của VLOOKUP lại là các số lớn hơn 40. Chính vì vậy mới xuất hiện lỗi #REF. Cách khắc phục: Thay đổi số 40 trong name LuuData.
Còn tại ô D15, vấn đề là ở tham số thứ 2 của VLOOKUP. Bạn sửa lại cho phù hợp là được.

Cảm ơn nghiaphuc nhiều nhé mình không biết nhiều về exel nên cứ loay hoay
Mình sửa được rồi cảm ơn nhiều
 
lấy 10 gia trị từ nhỏ đến lớn

Đúng ra bài này dùng PivotTable để tổng hợp là nhanh gọn nhất. Có thể lấy ra top 10 và sort tùy ý
Tuy nhiên phải hỏi lại: 1 tên hàng nhưng có nhiều số lượng, nhiều số tiền thì có cộng dồn lại không? (mà lý nào lại không cộng dồn nhỉ?)
e đã sửa lại đề bài, có gì a xem lại giúp em nhé.
cái em cần là khi em chọn vào tháng bất kì 01,02,03,04 thì liệt kê 10 tên hàng có so tiền lớn nhất giảm dần vi du: 4000,2000,3000....
cám ơn anh nhìu.
 

File đính kèm

+1) Thật là không hiểu ý bạn. Với dữ liệu Nsu - 1.2012 sau khi trích lọc tôi thấy có 11 tên hàng đúng như công thức => vậy 10 tên hàng là như thế nào? Nếu thích 10 thì chỉ cho 10 dong công thức là xong lúc đó sai là cái chắc
+2) Để bắt lỗi công thức bạn cho đoạn sau vào đầu tất cả công thức (chú ý kết thúc Ctrl + Shift + Enter)
Mã:
=IF(COUNT(Tien)<ROW(1:1),"",
cám ơn bạn đã chỉ ra cái sai cho mình, bạn đã nói đúng nếu số tiền trùng nhau thì nếu lọc đến 10 tên hàng thì tên thứ 11 cũng có số tiền giống tên hàng thứ 10 thì biết lấy cái nào , cái này để mình xem lại bạn nhé .
chân thành cám ơn bạn "dhn"
 
lấy giá trị lớn nhất thoả mản điều kiện

e cần công thức để trích lọc dữ liệu , khi em chọn tháng bất kì từ 01-04 thì sẽ liệt kê ra 10 tên hàng có gia trị lớn nhất. nếu viết công thức không được thì cho em xin code VBA nhé
cám ơn anh, chị nhiều
 

File đính kèm

e cần công thức để trích lọc dữ liệu , khi em chọn tháng bất kì từ 01-04 thì sẽ liệt kê ra 10 tên hàng có gia trị lớn nhất. nếu viết công thức không được thì cho em xin code VBA nhé
cám ơn anh, chị nhiều

vba chưa làm được, từ từ ngâm dấm sau.
xem công thức trước

bạn sửa lại công thức một chút

D4=LARGE(INDIRECT(VLOOKUP($B$2,$G$2:$I$6,3,0)),ROW()-1)

thành
D4=LARGE(INDIRECT(VLOOKUP($B$2,$G$2:$I$6,3,0)),ROW()-3)
 

File đính kèm

Lần chỉnh sửa cuối:
e cần công thức để trích lọc dữ liệu , khi em chọn tháng bất kì từ 01-04 thì sẽ liệt kê ra 10 tên hàng có gia trị lớn nhất. nếu viết công thức không được thì cho em xin code VBA nhé
cám ơn anh, chị nhiều

Thử chạy code này nha:

Mã:
Public Sub LOC_10()
Application.ScreenUpdating = False
Dim sArr(), dArr(), I As Long, K As Long, Cot As Long, Tem As Variant
Tem = [B2] * 1
With Sheets("Data")
    K = .[IV2].End(xlToLeft).Column
    sArr = .[C2].Resize(, K).Value
    For I = 1 To UBound(sArr, 2)
        If sArr(1, I) * 1 = Tem Then
            Cot = I
            Exit For
        End If
    Next I
    sArr = .Range(.[C4], .[C65000].End(xlUp)).Resize(, K).Value
End With
ReDim dArr(1 To UBound(sArr, 1), 1 To 3)
For I = 1 To UBound(sArr, 1)
    dArr(I, 1) = sArr(I, 1)
    dArr(I, 2) = sArr(I, Cot)
    dArr(I, 3) = sArr(I, Cot + 2)
Next I
With Sheets("Lietke")
    .[B4].Resize(I - 1, 3).Value = dArr
    .[B4].Resize(I - 1, 3).Sort Key1:=Range("D4"), Order1:=xlDescending
    .[B14:D65000].ClearContents
End With
Application.ScreenUpdating = True
End Sub
 

File đính kèm

Thử chạy code này nha:

Mã:
Public Sub LOC_10()
Application.ScreenUpdating = False
Dim sArr(), dArr(), I As Long, K As Long, Cot As Long, Tem As Variant
Tem = [B2] * 1
With Sheets("Data")
    K = .[IV2].End(xlToLeft).Column
    sArr = .[C2].Resize(, K).Value
    For I = 1 To UBound(sArr, 2)
        If sArr(1, I) * 1 = Tem Then
            Cot = I
            Exit For
        End If
    Next I
    sArr = .Range(.[C4], .[C65000].End(xlUp)).Resize(, K).Value
End With
ReDim dArr(1 To UBound(sArr, 1), 1 To 3)
For I = 1 To UBound(sArr, 1)
    dArr(I, 1) = sArr(I, 1)
    dArr(I, 2) = sArr(I, Cot)
    dArr(I, 3) = sArr(I, Cot + 2)
Next I
With Sheets("Lietke")
    .[B4].Resize(I - 1, 3).Value = dArr
    .[B4].Resize(I - 1, 3).Sort Key1:=Range("D4"), Order1:=xlDescending
    .[[B][COLOR=#ff0000]B14[/COLOR][/B]:D65000].ClearContents
End With
Application.ScreenUpdating = True
End Sub
Phải là B4 chứ, với lại nên bẩy lỗi khi người dùng gõ số khác ngoài số từ 1-4.
Có thể dùng cách khác để lọc, ADO chẳng hạn.
 
Phải là B4 chứ, với lại nên bẩy lỗi khi người dùng gõ số khác ngoài số từ 1-4.
Có thể dùng cách khác để lọc, ADO chẳng hạn.

Đề bài yêu cầu lọc và sort liệt kê 10 người có số lớn nhất theo thứ tự giảm dần.

Và lệnh .[B14:D65000].ClearContents là sau khi mình đã sỏrt thì mình xóa dữ liệu phía dưới chỉ chừa 10 dòng phía trên theo yêu cầu của đề bài.

-thêm cái bẫy lỗi có lẽ hợp lý hơn, có thể bạn ấy có đến 12 tháng để mà sort.
 
Đề bài yêu cầu lọc và sort liệt kê 10 người có số lớn nhất theo thứ tự giảm dần.

Và lệnh .[B14:D65000].ClearContents là sau khi mình đã sỏrt thì mình xóa dữ liệu phía dưới chỉ chừa 10 dòng phía trên theo yêu cầu của đề bài.

-thêm cái bẫy lỗi có lẽ hợp lý hơn, có thể bạn ấy có đến 12 tháng để mà sort.
hihi, nếu dữ liệu ít hơn 10 dòng thì sao?
 
Lại thêm 1 ý kiến nữa, liệu dòng thứ 11 mà có số liệu trùng với dòng số 10 thì sẽ liệt kê và lọc như thế nào nhỉ?

Cái này do yêu cầu của đề bài thôi...hihi
Do vậy ta nên dùng ADO, ADO sẽ giải quyết được vấn đề này.
 
Do vậy ta nên dùng ADO, ADO sẽ giải quyết được vấn đề này.


Bạn có thể dùng ADO để giải quyết yêu cầu đề bài này được không? Mình cũng rất muốn học hỏi thêm về ADO.
Cảm ơn bạn nhiều!
Thực ra khi giải quyết bất kỳ 1 đề bài nào chủ yếu đúng mục đích của người hỏi, nên chắc chắn khi làm, sẽ phát sinh nhiều vấn đề và khó lường trước các tình huống và cũng do người hỏi cũng chưa chắc lường hết các tình huống. Có rất nhiều bài làm ra như thế này, đúng ý ở bước 1 rồi lại nghĩ thêm ra nhiều yêu cầu khác nên mình chưa lường trước được các tình huống mà bẫy lỗi.

Cảm ơn bạn đã góp ý xây dựng.
 
Chỉnh sửa lần cuối bởi điều hành viên:
Giúp mình làm bài tập tính đơn giá

1) Đơn giá (USD): dựa vào Mã hàng tra trong Danh mục hàng kết hợp với Hình thức bán để có giá trị hợp lý.
Biết rằng Hình thức bán là sỉ nếu SL >=10, còn ngược lại thì Hình thức bán là Lẻ
2) Thành tiền (VNĐ): = (SL*Đơn giá (USD)+ Thuế VAT)*Tỷ giá. biết nếu ĐVT là "Bộ" thì Tỷ giá 5%, còn người là thì =10%
4) Tỷ giá: dựa vào ngày bán tra trong thông tin tỷ giá để có giá trị hợp lý theo Ngày
 

File đính kèm

1) Đơn giá (USD): dựa vào Mã hàng tra trong Danh mục hàng kết hợp với Hình thức bán để có giá trị hợp lý.
Biết rằng Hình thức bán là sỉ nếu SL >=10, còn ngược lại thì Hình thức bán là Lẻ
2) Thành tiền (VNĐ): = (SL*Đơn giá (USD)+ Thuế VAT)*Tỷ giá. biết nếu ĐVT là "Bộ" thì Tỷ giá 5%, còn người là thì =10%
4) Tỷ giá: dựa vào ngày bán tra trong thông tin tỷ giá để có giá trị hợp lý theo Ngày
Đơn giá (USD), E4:
Mã:
=VLOOKUP(B4,$A$22:$E$26,IF(D4>=10,4,5),0)
Thành tiền (VND), F4:
Mã:
=E4*(100%+IF(VLOOKUP(B4,$A$22:$E$26,3,0)="Bộ",5%,10%))*VLOOKUP(DATE(2013,8,C4),$H$4:$I$12,2)
Thống kê thành tiền bán sỉ, H22:
Mã:
=SUMPRODUCT(($B$4:$B$13=INDEX($A$22:$A$26,MATCH($G22,$B$22:$B$26,0),))*($D$4:$D$13>=10),$F$4:$F$13)
Thống kê thành tiền bán lẻ, I22:
Mã:
=SUMPRODUCT(($B$4:$B$13=INDEX($A$22:$A$26,MATCH($G22,$B$22:$B$26,0),))*($D$4:$D$13<10),$F$4:$F$13)
 
thanks b. nhiều, cho mình hỏi với những lệnh điều kiện dài, thì có phải mình ưu tiên điều kiện sau cùng rồi mới tới điều kiện ban đầu phải không
 

File đính kèm

  • Screenshot (89).jpg
    Screenshot (89).jpg
    19.3 KB · Đọc: 47
  • Screenshot (89).jpg
    Screenshot (89).jpg
    10.5 KB · Đọc: 4
Lần chỉnh sửa cuối:
thanks b., nhưng không hiểu sao khi mình add hàm vào thì excel lại báo lỗi, trong khi mình nhìn thì thấy mọi thứ đều ok
View attachment 97465
Cái hình nhỏ chút xíu vậy thì có đọc được cái gì đâu mà biết đó là lỗi gì. Khi xuất hiện hộp thoại như vậy, thay vì bạn nhấn phím Print Screen thì bạn nhấn tổ hợp phím Alt + Print Screen, bạn sẽ chụp được riêng hộp thoại này mà không phải là toàn bộ màn hình. Sau khi chụp xong thì bạn mở chương trình Paint có sẵn của Windows, dán nó vào đó và lưu lại, bạn sẽ được cái hình rõ hơn.
 
Cái hình nhỏ chút xíu vậy thì có đọc được cái gì đâu mà biết đó là lỗi gì. Khi xuất hiện hộp thoại như vậy, thay vì bạn nhấn phím Print Screen thì bạn nhấn tổ hợp phím Alt + Print Screen, bạn sẽ chụp được riêng hộp thoại này mà không phải là toàn bộ màn hình. Sau khi chụp xong thì bạn mở chương trình Paint có sẵn của Windows, dán nó vào đó và lưu lại, bạn sẽ được cái hình rõ hơn.
mình sửa được rồi, tại hàm của b. bên trên 1 số chỗ nhầm dấu ; thành dấu , nên không được :)
 
Do vậy ta nên dùng ADO, ADO sẽ giải quyết được vấn đề này.[/QUOTE
bạn ơi mình không biết ADO là gì cả, nhưng vấn đề mà bạn nói là mình hiểu, nếu tên hàng thứ 11 và có số tiền trùng với tên hàng thứ 10 thì ko bít làm sao, nhung không sao, vấn đề này mình sẽ giải quyết được, mình chỉ quan tâm là giờ nếu tháng bất cứ nào đó chỉ có ít hơn 10 tên hàng thì nó hiển thị không đúng lắm,
anh chị có thể giúp em viết làm sao cho nó hiểu là nếu không đủ 10 tên hàng thì những dòng còn lại là không hiện thì dữ liệu được không? mình ví dụ tháng 02 thì cột số lượng và số tiền vẫn đúng nhưng cột "tên hàng " thì vẫn còn những dòng không cần hiển thị
NẾU MÌNH THÊM 1 ĐIỀU KIỆN VÀO SHEET "data" là LOẠI VÀO CỘT P THÌ CÓ THỂ VIẾT CODE VBA HOẶC CÔNG THƯC EXCEL ĐƯƠC KHÔNG
CÁC A CHỊ GIÚP EM NHÉ
 

File đính kèm

Lần chỉnh sửa cuối:
Mình không rành về excel lằm nhờ chủ thớt làm giúp cái theo dõi lượt view trên web= excel.
 

File đính kèm

Do vậy ta nên dùng ADO, ADO sẽ giải quyết được vấn đề này.[/QUOTE
bạn ơi mình không biết ADO là gì cả, nhưng vấn đề mà bạn nói là mình hiểu, nếu tên hàng thứ 11 và có số tiền trùng với tên hàng thứ 10 thì ko bít làm sao, nhung không sao, vấn đề này mình sẽ giải quyết được, mình chỉ quan tâm là giờ nếu tháng bất cứ nào đó chỉ có ít hơn 10 tên hàng thì nó hiển thị không đúng lắm,
anh chị có thể giúp em viết làm sao cho nó hiểu là nếu không đủ 10 tên hàng thì những dòng còn lại là không hiện thì dữ liệu được không? mình ví dụ tháng 02 thì cột số lượng và số tiền vẫn đúng nhưng cột "tên hàng " thì vẫn còn những dòng không cần hiển thị
NẾU MÌNH THÊM 1 ĐIỀU KIỆN VÀO SHEET "data" là LOẠI VÀO CỘT P THÌ CÓ THỂ VIẾT CODE VBA HOẶC CÔNG THƯC EXCEL ĐƯƠC KHÔNG
CÁC A CHỊ GIÚP EM NHÉ
hi a ba tê lâu rùi không gặp , vậy bài tập của em có thể làm được không anh? giúp em với nhé
 
vba chưa làm được, từ từ ngâm dấm sau.
xem công thức trước

bạn sửa lại công thức một chút

D4=LARGE(INDIRECT(VLOOKUP($B$2,$G$2:$I$6,3,0)),ROW()-1)

thành
D4=LARGE(INDIRECT(VLOOKUP($B$2,$G$2:$I$6,3,0)),ROW()-3)[/QUOTạn
BẠN NHAPMON OI NEU NHU MINH THEM 1 DK NƯA VÀO SHEET "data" là loại thì có thể trích lọc được không vậy, nếu có thì cho mình xin công thức nhé

 

File đính kèm

Lần chỉnh sửa cuối:

BẠN NHAPMON OI NEU NHU MINH THEM 1 DK NƯA VÀO SHEET "data" là loại thì có thể trích lọc được không vậy, nếu có thì cho mình xin công thức nhé

D4=IFERROR(INDEX(Loai,SMALL(IF(INDIRECT(VLOOKUP($B$2,$G$2:$I$6,3,0))=D4,ROW(INDIRECT(VLOOKUP($B$2,$G$2:$I$6,3,0)))-ROW($D$4)+1),COUNTIF(D$4:D4,D4))),"")

kết thúc bằng Ctrl Shift Enter.
với "Loai" là define name cho cột loại
để tiên sử dụng bạn có nên đặt define động.
ngâm dấm cho vui thôi, chớ mấy bại toán này nên giải quyết bằng vba cho nhẹ file
 

File đính kèm

Lần chỉnh sửa cuối:
em đã làm được rùi anh ba tê ơi, a thật là tuyệt, e cũng đang đang kí học 1 khóa lập trình, ma tuần sau mới đi hoc, có gì nhờ anh chỉ dạy em với nhe
cám ơn anh rất nhìu

dạ em cám ơn anh nhapmon nhiu lắm

D4=IFERROR(INDEX(Loai,SMALL(IF(INDIRECT(VLOOKUP($B$2,$G$2:$I$6,3,0))=D4,ROW(INDIRECT(VLOOKUP($B$2,$G$2:$I$6,3,0)))-ROW($D$4)+1),COUNTIF(D$4:D4,D4))),"")

kết thúc bằng Ctrl Shift Enter.
với "Loai" là define name cho cột loại
để tiên sử dụng bạn có nên đặt define động.

ngâm dấm cho vui thôi, chớ mấy bại toán này nên giải quyết bằng vba cho nhẹ file
mình có làm như bạn nói nhưng mà kết qua chưa ra được bạn có thể làm và post file lên lai cho mình xem được không bạn
 
Chỉnh sửa lần cuối bởi điều hành viên:
Có pro nào hướng dẫn e với ạ.Thanks các bác
Đặt tiêu đề đã bị khoá topic mà bạn chưa rút kinh nghiệm.
http://www.giaiphapexcel.com/forum/...ro-nào-hướng-dẫn-em-với-ạ&p=476433#post476433
Bạn cần hỏi gì thì hỏi rõ ràng, đầy đủ nội dung muốn hỏi, kèm file có dữ liệu cụ thể.
Có pro nào là cái gì vậy?
hướng dẫn e với ạ là hướng dẫn cái gì?
 
Đặt tiêu đề đã bị khoá topic mà bạn chưa rút kinh nghiệm.
http://www.giaiphapexcel.com/forum/...ro-nào-hướng-dẫn-em-với-ạ&p=476433#post476433
Bạn cần hỏi gì thì hỏi rõ ràng, đầy đủ nội dung muốn hỏi, kèm file có dữ liệu cụ thể.
Có pro nào là cái gì vậy?
hướng dẫn e với ạ là hướng dẫn cái gì?
hihi chắc là chưa hiểu vấn đề đó mà, chủ nhật không đi chơi mà lên :GPE vậy a ba tê
 
vba chưa làm được, từ từ ngâm dấm sau.
xem công thức trước

bạn sửa lại công thức một chút

D4=LARGE(INDIRECT(VLOOKUP($B$2,$G$2:$I$6,3,0)),ROW()-1)

thành
D4=LARGE(INDIRECT(VLOOKUP($B$2,$G$2:$I$6,3,0)),ROW()-3)[/QUOTạn
BẠN NHAPMON OI NEU NHU MINH THEM 1 DK NƯA VÀO SHEET "data" là loại thì có thể trích lọc được không vậy, nếu có thì cho mình xin công thức nhé

gốp chút cho vui thôi để gọn công thức và ko cần lập bảng dò :
=LARGE(INDIRECT("ttien"&RIGHT($B$2)),A4)
thây thế cho công thức dưới
LARGE(INDIRECT(VLOOKUP($B$2,$G$2:$I$6,3,0)),ROW ()-1)
xin đừng buồn nhe NhapMon
 
Một câu nói có "cục bộ" không? Những gì VBA không giải quyết được thì ADO sẽ làm tất tần tật?
Ẹc, E... "Tui nói vui thồi nghe bồ"
Ậy, sao anh lại nói thế, như anh cũng đã biết lọc và truy vấn thì ado là 1 thế mạnh, mà đề bài là lọc và truy vấn thì ta nên dùng ado là hợp lý.

Lấy code từ bài #225 của xuan.nguyen82 bên trên. Viết lòng thòng thêm 1 tí coi có sử dụng được không nhé.
Kết quả vẫn chưa chính xác nếu như có những số tiền cao nhất bị trùng. Nếu dùng vba thì ta nên dùng autofilter cho gọn
 
Lần chỉnh sửa cuối:

File đính kèm

làm thêm DK ở cột E theo yeu cầu của bạn, và rút gọn công thức theo gợi ý của bạn Good_luck
bạn ơi bạn hiểu sai ý của mình rùi, ý mình là thêm 1 ĐK là A, hoăc bất kì "loại " nào thì liệt kê 10 tên hàng ra chứ không phải là những loại hàng kèm theo là loại gì
 

File đính kèm

bạn ơi bạn hiểu sai ý của mình rùi, ý mình là thêm 1 ĐK là A, hoăc bất kì "loại " nào thì liệt kê 10 tên hàng ra chứ không phải là những loại hàng kèm theo là loại gì
Làm cho bạn = ADO như sau nhé:

Mã:
Sub Loc_AnhChangNgoc()    
On Error GoTo BayLoi
    Dim adoConn As Object, adoRs As Object, arr As Variant, nCol As Integer
    Set adoConn = CreateObject("ADODB.Connection"): Set adoRs = CreateObject("ADODB.Recordset")
    arr = Array("6", "9", "12", "15"): nCol = arr(Sheet2.Range("B2").Value - 1)
    With adoConn
        .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                            "Data Source=" & ThisWorkbook.FullName & _
                            ";Extended Properties=""Excel 8.0;HDR=No;"";"
        .Open
    End With
    With adoRs
        .ActiveConnection = adoConn
        .Open "select top 10 F2, f" & nCol - 2 & ",F" & nCol & " from [data$B4:P500] " & _
              "where F3 like '" & IIf(Len(Sheet2.Range("D2")) = 0, "%", Sheet2.Range("D2")) & "' and F" & nCol & " is not null " & _
              "order by f" & nCol & " desc"
    End With
    With Sheets("LietKe")
        .[B4:D65000].ClearContents
        .[B4].CopyFromRecordset adoRs
    End With
    adoRs.Close: Set adoRs = Nothing: adoConn.Close: Set adoConn = Nothing: Erase arr
    Exit Sub
BayLoi:
    If Err.Number = 9 Then
           MsgBox "Xin loi nhe, thang ban chon nam ngoai vung phu song", vbInformation
           Sheets("LietKe").[B4:D65000].ClearContents
        Else
           MsgBox Err.Description
    End If


End Sub
 

File đính kèm

bạn ơi bạn hiểu sai ý của mình rùi, ý mình là thêm 1 ĐK là A, hoăc bất kì "loại " nào thì liệt kê 10 tên hàng ra chứ không phải là những loại hàng kèm theo là loại gì

vậy thì thêm dk vào
D4=LARGE(INDIRECT("TTien"&$B$2)*(Loai=$E$3),A4)
kết thúc bằng Ctrl Shift Enter nhé
 
Ậy, sao anh lại nói thế, như anh cũng đã biết lọc và truy vấn thì ado là 1 thế mạnh, mà đề bài là lọc và truy vấn thì ta nên dùng ado là hợp lý.


Kết quả vẫn chưa chính xác nếu như có những số tiền cao nhất bị trùng. Nếu dùng vba thì ta nên dùng autofilter cho gọn
Ậy, sao anh lại nói thế, như anh cũng đã biết lọc và truy vấn thì ado là 1 thế mạnh
Đồng ý luôn.
Nhưng cái này thì hổng hiểu:
Kết quả vẫn chưa chính xác nếu như có những số tiền cao nhất bị trùng
.
Tác giả yêu cầu chỉ lấy 10 tên hàng có số tiền cao nhất từ trên xuống, trùng hay gì đó tui hổng biết à nghe, nếu nhìn kết quả thấy đúng là từ trên xuống đủ 10 tên hàng có số tiền từ cao xuống thấp là OK, chuyện còn lại tác giả tự giải quyết.
Híc!
 
Lần chỉnh sửa cuối:
Tác giả yêu cầu chỉ lấy 10 người có số tiền cao nhất từ trên xuống, trùng hay gì đó tui hổng biết à nghe, nếu nhìn kết quả thấy đúng là từ trên xuống đủ 10 người có số tiền từ cao xuống thấp là OK, chuyện còn lại tác giả tự giải quyết.
Híc!
hihi, giả sử như số 23.000 là số lớn nhất. Nhưng số 23.000 nó xuất hiện trong csdl lớn hơn 10 thì liệu trích ra làm sao? Chắc chắn chỉ lấy có 10 số. Vậy xin hỏi các số 23.000 còn lại thì sao? Không sợ bị kiện à.
 
hihi, giả sử như số 23.000 là số lớn nhất. Nhưng số 23.000 nó xuất hiện trong csdl lớn hơn 10 thì liệu trích ra làm sao? Chắc chắn chỉ lấy có 10 số. Vậy xin hỏi các số 23.000 còn lại thì sao? Không sợ bị kiện à.
Hì hì... cũng chưa hiểu luôn.
Ý bạn là ví dụ có 15 con số 23000 (cùng lớn nhất) trong dữ liệu phải không?
Cái này tác giả tự giải quyết thôi. Tác giải chỉ yêu cầu lọc, sắp xếp và lấy tối đa 10 SP trong 1 khung có sẵn cho 10 dòng thôi mà, hơn nữa thì ghi vào đâu?
Híc! Ai biểu hổng nói rõ.
 
Lần chỉnh sửa cuối:
Hì hì... cũng chưa hiểu luôn.
Ý bạn là ví dụ có 15 con số 23000 (cùng lớn nhất) trong dữ liệu phải không?
Cái này tác giả tự giải quyết thôi. Tác giải chỉ yêu cầu lọc, sắp xếp và lấy tối đa 10 người trong 1 khung có sẵn cho 10 người thôi mà, hơn nữa thì ghi vào đâu?
Híc! Ai biểu hổng nói rõ.
Mình phải lường trước sự việc chứ. Làm như vậy thì không hợp lý chút nào cả. Anh đưa ví dụ có 15 số lớn nhất bằng nhau, nhưng anh lấy dữ liệu chỉ có 10 thì như vậy còn lại là 5 số, những số này tính sao? Ví dụ như anh thống kê điểm thi đại học là lấy điểm từ trên xuống theo như trường hợp trên thì 5 thí sinh còn lại không được lấy? Anh sẽ giải quyết sao khi gặp trường hợp này?
 
Mình phải lường trước sự việc chứ. Làm như vậy thì không hợp lý chút nào cả. Anh đưa ví dụ có 15 số lớn nhất bằng nhau, nhưng anh lấy dữ liệu chỉ có 10 thì như vậy còn lại là 5 số, những số này tính sao? Ví dụ như anh thống kê điểm thi đại học là lấy điểm từ trên xuống theo như trường hợp trên thì 5 thí sinh còn lại không được lấy? Anh sẽ giải quyết sao khi gặp trường hợp này?
Tui đọc và làm theo yếu cầu lấy 10 tên hàng chứ không phải lấy 10 số tiền lớn nhất nên nó mới như vậy.
Híc. Nếu sai tác giả phải nói rõ là lấy 10 tên hàng hay 10 số tiền lớn nhất chớ bộ.
Hì hì...
KyQuaTa.JPG
 
Tui đọc và làm theo yếu cầu lấy 10 tên hàng chứ không phải lấy 10 số tiền lớn nhất nên nó mới như vậy.
Híc. Nếu sai tác giả phải nói rõ là lấy 10 tên hàng hay 10 số tiền lớn nhất chớ bộ.
Hì hì...
Điều này không hợp logic, vậy tiêu chuẩn lấy 10 món hàng là gì? có phải có số tiền cao nhất? còn nếu chỉ lấy 10 món hàng như thế thì bị kiện là đúng. Nếu như theo suy nghĩ của anh chỉ lấy 10 món hàng thì bóc và lấy đại 10 món, không hợp logic.
 
Điều này không hợp logic, vậy tiêu chuẩn lấy 10 món hàng là gì? có phải có số tiền cao nhất? còn nếu chỉ lấy 10 món hàng như thế thì bị kiện là đúng. Nếu như theo suy nghĩ của anh chỉ lấy 10 món hàng thì bóc và lấy đại 10 món, không hợp logic.

Mệt chết được!
Thôi thì cứ để tác giả người ta quyết định, tranh luận làm gì mấy chuyện tào lao này
 
Mệt chết được!
Thôi thì cứ để tác giả người ta quyết định, tranh luận làm gì mấy chuyện tào lao này
Bạn nói tào lao là tào lao làm sao? Vấn đề chưa giải quyết thì mình có thể tranh luận chứ.

bạn ơi mình không biết ADO là gì cả, nhưng vấn đề mà bạn nói là mình hiểu, nếu tên hàng thứ 11 và có số tiền trùng với tên hàng thứ 10 thì ko bít làm sao, nhung không sao, vấn đề này mình sẽ giải quyết được, mình chỉ quan tâm là giờ nếu tháng bất cứ nào đó chỉ có ít hơn 10 tên hàng thì nó hiển thị không đúng lắm,
anh chị có thể giúp em viết làm sao cho nó hiểu là nếu không đủ 10 tên hàng thì những dòng còn lại là không hiện thì dữ liệu được không? mình ví dụ tháng 02 thì cột số lượng và số tiền vẫn đúng nhưng cột "tên hàng " thì vẫn còn những dòng không cần hiển thị
NẾU MÌNH THÊM 1 ĐIỀU KIỆN VÀO SHEET "data" là LOẠI VÀO CỘT P THÌ CÓ THỂ VIẾT CODE VBA HOẶC CÔNG THƯC EXCEL ĐƯƠC KHÔNG
CÁC A CHỊ GIÚP EM NHÉ

Vậy phần tô màu đỏ ở trên có nói lên được điều gì không?
 
Bạn nói tào lao là tào lao làm sao? Vấn đề chưa giải quyết thì mình có thể tranh luận chứ.

Tào lao nằm ở chổ 2 người cứ tranh luận mà tác giả lại chẳng thấy nói gì ---> Có phải là rách việc không?
Tác giả cũng nói rõ rằng:
katylove83 đã viết:
Bạn ơi mình không biết ADO là gì cả, nhưng vấn đề mà bạn nói là mình hiểu, nếu tên hàng thứ 11 và có số tiền trùng với tên hàng thứ 10 thì ko bít làm sao, nhung không sao, vấn đề này mình sẽ giải quyết được, mình chỉ quan tâm là giờ nếu tháng bất cứ nào đó chỉ có ít hơn 10 tên hàng thì nó hiển thị không đúng lắm,
Chổ màu xanh bạn lại không chịu đọc
Nhưng thôi, bạn thích gì thì cứ làm, anh Ba Tê thích làm khác thì.. thây kệ anh ấy đi
Vậy đi nha
 
Lần chỉnh sửa cuối:
Điều này không hợp logic, vậy tiêu chuẩn lấy 10 món hàng là gì? có phải có số tiền cao nhất? còn nếu chỉ lấy 10 món hàng như thế thì bị kiện là đúng. Nếu như theo suy nghĩ của anh chỉ lấy 10 món hàng thì bóc và lấy đại 10 món, không hợp logic.
Tiêu chuẩn 10 món hàng là đây:
viết công thưc lấy 10 tên hàng, co so tiền lớn nhất và sắp xếp số tiền từ lớn đến nhỏ lấy luôn cả cột số lượng( cột sổ lượng không cần săp
Ví dụ có 15 tên hàng có số tiền lớn nhất bằng nhau, tui lấy 10 tên thôi thì cũng đúng yêu cầu rồi, nếu tác giả muốn gì thêm thì hỏi tiếp.
Nếu tác giả viết vầy thì tôi hiểu khác:
Viết công thức lấy những tên hàngsố tiền lớn thứ nhất đến số tiền lớn thứ 10 và sắp xếp số tiền từ lớn đến nhỏ...
Híc! Chữ với nghĩa, ai cũng hiểu chỉ mình tui không hiểu!
 
Lần chỉnh sửa cuối:
Tiêu chuẩn 10 món hàng là đây:

Ví dụ có 15 tên hàng có số tiền lớn nhất bằng nhau, tui lấy 10 tên thôi thì cũng đúng yêu cầu rồi, nếu tác giả muốn gì thêm thì hỏi tiếp.
Nếu tác giả viết vầy thì tôi hiểu khác:

Híc! Chữ với nghĩa, ai cũng hiểu chỉ mình tui không hiểu!
Nếu bàn cho ra lẽ bài này thì em sẽ không vội quan tâm đến công thức hay code... Em sẽ gợi ý tác giả nên bố trí lại dữ liệu cho hợp lý: Có 1 cột THÁNG đàng hoàng chứ không thể mỗi tháng 1 cột như dữ liệu gốc:


Untitled.jpg
































Từ dữ liệu đã được bố trí lại, muốn tổng hợp theo kiểu Top 10 thật không có gì dễ hơn ---> PivotTable 1 phát ra ngay
 
Tào lao nằm ở chổ 2 người cứ tranh luận mà tác giả lại chẳng thấy nói gì ---> Có phải là rách việc không?
Tác giả cũng nói rõ rằng:

Chổ màu xanh bạn lại không chịu đọc
Nhưng thôi, bạn thích gì thì cứ làm, anh Ba Tê thích làm khác thì.. thây kệ anh ấy đi
Vậy đi nha
Đã đưa lên đây thì vấn đề không phải của riêng tác giả, mà nếu không phải của riêng tác giả thì mình có thể tranh luận, có thể có những thành viên khác theo dõi và áp dụng. Bạn nói tào lao sao nghe nó nặng lời quá.
 
Mệt chết được!
Thôi thì cứ để tác giả người ta quyết định, tranh luận làm gì mấy chuyện tào lao này
trước hết em xin cám ơn các bác đã giup đỡ em, e có đôi lời thế này
nếu từ đầu em viết vậy thì các bác không còn tranh cải như vậy( tuy nhiên tranh luận như vậy cũng giúp em hiểu ra thêm vấn đề trong file của em )
bởi vì code là không trùng nhau, cho nên e chỉ cần 10 số tiền của lớn nhất(giảm dần) là được rồi, còn trường hợp mấy anh nói nếu như số tiền trùng nhau thì với yêu cầu của em hiện tại thì không chưa cần thiết. miễn là liệt kê 10 số tiền lớn nhất trong 1 tháng là ok. tuy nhiên anh "congcutuyetvoi" nói thì là cũng không phải là một ý kiến cần bổ sung thêm vào và nếu sau này e cần e sẽ vận dụng sau, còn bây giờ anh "bate" đã làm đúng ý của em rùi hihihi
nhưng cách anh ba tê thay đổi và sắp xếp lại dữ liệu của bảng tính như hình post lên thì không áp dụng được với file báo cáo của em, cho nen e không thể dùng theo cách đó.
xin chân thành cám ơn các anh đã nhiệt tình giúp đỡ
 
trước hết em xin cám ơn các bác đã giup đỡ em, e có đôi lời thế này
nếu từ đầu em viết vậy thì các bác không còn tranh cải như vậy( tuy nhiên tranh luận như vậy cũng giúp em hiểu ra thêm vấn đề trong file của em )
bởi vì code là không trùng nhau, cho nên e chỉ cần 10 số tiền của lớn nhất(giảm dần) là được rồi, còn trường hợp mấy anh nói nếu như số tiền trùng nhau thì với yêu cầu của em hiện tại thì không chưa cần thiết. miễn là liệt kê 10 số tiền lớn nhất trong 1 tháng là ok. tuy nhiên anh "congcutuyetvoi" nói thì là cũng không phải là một ý kiến cần bổ sung thêm vào và nếu sau này e cần e sẽ vận dụng sau, còn bây giờ anh "bate" đã làm đúng ý của em rùi hihihi
nhưng cách anh ba tê thay đổi và sắp xếp lại dữ liệu của bảng tính như hình post lên thì không áp dụng được với file báo cáo của em, cho nen e không thể dùng theo cách đó.
xin chân thành cám ơn các anh đã nhiệt tình giúp đỡ
"Chời đất ơi", tui có thay đổi, sắp xếp gì đâu "Chời".
 
trước hết em xin cám ơn các bác đã giup đỡ em, e có đôi lời thế này
nếu từ đầu em viết vậy thì các bác không còn tranh cải như vậy( tuy nhiên tranh luận như vậy cũng giúp em hiểu ra thêm vấn đề trong file của em )
bởi vì code là không trùng nhau, cho nên e chỉ cần 10 số tiền của lớn nhất(giảm dần) là được rồi, còn trường hợp mấy anh nói nếu như số tiền trùng nhau thì với yêu cầu của em hiện tại thì không chưa cần thiết. miễn là liệt kê 10 số tiền lớn nhất trong 1 tháng là ok. tuy nhiên anh "congcutuyetvoi" nói thì là cũng không phải là một ý kiến cần bổ sung thêm vào và nếu sau này e cần e sẽ vận dụng sau, còn bây giờ anh "bate" đã làm đúng ý của em rùi hihihi
nhưng cách anh ba tê thay đổi và sắp xếp lại dữ liệu của bảng tính như hình post lên thì không áp dụng được với file báo cáo của em, cho nen e không thể dùng theo cách đó.
xin chân thành cám ơn các anh đã nhiệt tình giúp đỡ

Nick Excelcongcutuyetvoicuaban......chớ hổng phải CongCuTuyetVoi đâu bạn.
Nói chung, người hỏi cần hỏi rõ thì người trả lời cũng không mất nhiều thời gian để mà phải "đoán ý" tác giả muốn hỏi gì.
Do vậy, kinh nghiệm là đưa lên câu hỏi càng rõ ràng, càng tốt.

Tóm lại là bạn vẫn chưa sử dụng được cách nào trong các cách của nhapmon, xuan.nguyen82. good_luck, Ba Tê, Excelcongcutuyetvoicuaban.... đúng không?
Tóm lại bài vẫn chưa giải quyết được đúng ý tác giả.
 
Lần chỉnh sửa cuối:
Nick Excelcongcutuyetvoicuaban......chớ hổng phải CongCuTuyetVoi đâu bạn.
Nói chung, người hỏi cần hỏi rõ thì người trả lời cũng không mất nhiều thời gian để mà phải "đoán ý" tác giả muốn hỏi gì.
Do vậy, kinh nghiệm là đưa lên câu hỏi càng rõ ràng, càng tốt.

Tóm lại là bạn vẫn chưa sử dụng được cách nào trong các cách của nhapmon, xuan.nguyen82. good_luck, Ba Tê, Excelcongcutuyetvoicuaban.... đúng không?
Tóm lại bài vẫn chưa giải quyết được đúng ý tác giả.
còn bây giờ anh "bate" đã làm đúng ý của em rùi hihihi
mình viết vậy rùi mà còn chưa đúng ý gì nữa
 
nhưng cách anh ba tê thay đổi và sắp xếp lại dữ liệu của bảng tính như hình post lên thì không áp dụng được với file báo cáo của em, cho nen e không thể dùng theo cách đó.
xin chân thành cám ơn các anh đã nhiệt tình giúp đỡ


À, mình đọc câu này sau cùng, thấy bạn nói không thể dùng theo cách đó của anh Ba Tê nên mình hỏi lại xem bạn có áp dụng dc không? Nếu không thì mọi người tiếp tục giải quyết giúp bạn. Vậy xong rồi là ok. Cảm ơn bạn.
 
Giúp em bài tập này với. Bài tập cực khó em không làm đc.

Bài tập 1: Tính Thành Tiền = Số Lượng * Đơn Giá, trong đó Đơn Giá được tra ở Bảng 2 dựa vào Mã Hàng, Nghiệp Vụ (Mua hoặc Bán) và Hình Thức (Sĩ hoặc Lẽ) ở Bảng 1. (cái ô có số đỏ đỏ ở dưới là kết quả tham khảo ạ).

Bài tập 2: Tính Tiền Thưởng cho mỗi nhân viên biết rằng :
Thưởng 100000 cho nhân viên nào có mức Tiền Công Lắp Ráp cao nhất
Thưởng 50000 cho nhân viên nào đạt được mức Tiền Công Lắp Ráp cao kế tiếp
Các trường hợp còn lại thì không thưởng

Cái ý đầu tiên tức là thưởng 100000 cho nhân viên có mức tiền công láp ráp cao nhất thì em làm đc, còn cái ý số 2 em ko làm đc (khó quá).

Em viết như vậy nhưng mà nó cứ bị sai:

G3=IF(F3=MAX($F$3:$F$8),100000,IF(LARGE(F3:F8,2),50000,0))

Em cảm ơn.
 

File đính kèm

Lần chỉnh sửa cuối:
Giúp em bài tập này với. Bài tập cực khó em không làm đc.

Bài tập 1: Tính Thành Tiền = Số Lượng * Đơn Giá, trong đó Đơn Giá được tra ở Bảng 2 dựa vào Mã Hàng, Nghiệp Vụ (Mua hoặc Bán) và Hình Thức (Sĩ hoặc Lẽ) ở Bảng 1. (cái ô có số đỏ đỏ ở dưới là kết quả tham khảo ạ).

Bài tập 2: Tính Tiền Thưởng cho mỗi nhân viên biết rằng :
Thưởng 100000 cho nhân viên nào có mức Tiền Công Lắp Ráp cao nhất
Thưởng 50000 cho nhân viên nào đạt được mức Tiền Công Lắp Ráp cao kế tiếp
Các trường hợp còn lại thì không thưởng

Cái ý đầu tiên tức là thưởng 100000 cho nhân viên có mức tiền công láp ráp cao nhất thì em làm đc, còn cái ý số 2 em ko làm đc (khó quá).

Em cảm ơn.

Ví dụ khi làm bài tập, bạn cứ nghĩ theo cách của bạn và làm theo bạn, rồi đưa lên, mọi người xem và sửa cho bạn thì bạn mau tiến bộ hơn là không đưa ra ý kiến và cách giải quyết vấn đề của mình.

Bạn dùng hàm If với nhiều điều kiện cho ý 2 xem sao.
 
Lần chỉnh sửa cuối:
Giúp em bài tập này với. Bài tập cực khó em không làm đc.

Bài tập 1: Tính Thành Tiền = Số Lượng * Đơn Giá, trong đó Đơn Giá được tra ở Bảng 2 dựa vào Mã Hàng, Nghiệp Vụ (Mua hoặc Bán) và Hình Thức (Sĩ hoặc Lẽ) ở Bảng 1. (cái ô có số đỏ đỏ ở dưới là kết quả tham khảo ạ).

Bài tập 2: Tính Tiền Thưởng cho mỗi nhân viên biết rằng :
Thưởng 100000 cho nhân viên nào có mức Tiền Công Lắp Ráp cao nhất
Thưởng 50000 cho nhân viên nào đạt được mức Tiền Công Lắp Ráp cao kế tiếp
Các trường hợp còn lại thì không thưởng

Cái ý đầu tiên tức là thưởng 100000 cho nhân viên có mức tiền công láp ráp cao nhất thì em làm đc, còn cái ý số 2 em ko làm đc (khó quá).

Em viết như vậy nhưng mà nó cứ bị sai:

G3=IF(F3=MAX($F$3:$F$8),100000,IF(LARGE(F3:F8,2),50000,0))

Em cảm ơn.
G3 của bạn điền công thức này xem sao. Hiện tại chưa pro nên chưa có cách giải tối ưu cho bài 1
Mã:
=F3*VLOOKUP(B3,$A$12:$F$14,IF(AND(D3="Mua",E3="L"),4,IF(AND(D3="Mua",E3="S"),3,IF(AND(D3="Bán",E3="L"),6,5))),0)
Ở bài 2 bạn thử dùng công thức này xem.
Mã:
=IF(RANK(F3,$F$3:$F$8)=1,100000,IF(RANK(F3,$F$3:$F$8)=COUNTIF($F$3:$F$8,MAX($F$3:$F$8))+1,50000,0))
 
Lần chỉnh sửa cuối:
Mọi người giải giúp em bài tập về cách đếm theo file đính kèm này với ạ +-+-+-+
 

File đính kèm

Giúp em bài tập này với. Bài tập cực khó em không làm đc.

Bài tập 1: Tính Thành Tiền = Số Lượng * Đơn Giá, trong đó Đơn Giá được tra ở Bảng 2 dựa vào Mã Hàng, Nghiệp Vụ (Mua hoặc Bán) và Hình Thức (Sĩ hoặc Lẽ) ở Bảng 1. (cái ô có số đỏ đỏ ở dưới là kết quả tham khảo ạ).

Bài tập 2: Tính Tiền Thưởng cho mỗi nhân viên biết rằng :
Thưởng 100000 cho nhân viên nào có mức Tiền Công Lắp Ráp cao nhất
Thưởng 50000 cho nhân viên nào đạt được mức Tiền Công Lắp Ráp cao kế tiếp
Các trường hợp còn lại thì không thưởng

Cái ý đầu tiên tức là thưởng 100000 cho nhân viên có mức tiền công láp ráp cao nhất thì em làm đc, còn cái ý số 2 em ko làm đc (khó quá).

Em viết như vậy nhưng mà nó cứ bị sai:

G3=IF(F3=MAX($F$3:$F$8),100000,IF(LARGE(F3:F8,2),50000,0))

Em cảm ơn.
bạn hỏi bài 2 thì mình trả lời bài 2 vậy, bạn tạo cột phu
bạn dùng hàm large chỉ đúng khi nếu max chỉ có 1 giá trị, vì nếu có 2 giá tri max bằng nhau thi large(array, 2) sẽ bằng giá trị max
=
dòng 1 : Tiền Công Láp ráp
dòng 2 : "<"&MAX(F3:F8)

và công thức cột g3:
=IF(F3=MAX($F$3:$F$8),100000,IF(DMAX($F$2:$F$8,$F$2,$J$2:$J$3)=F3,50000,0))
 

File đính kèm

Lần chỉnh sửa cuối:
<<<<<< Mọi người giúp em với, em đang rất cần rồi ạ.

Đoán thử
1> Công thức cho cell C249:
Mã:
=SUMIF($D$5:$D$245,$B249,$CF$5:$CF$245)
2> Công thức cho cell D249:
Mã:
=COUNTIFS($D$5:$D$245,$B249,$CF$5:$CF$245,">0")
Tất cả kéo fill xuống
 
Giúp mình về bài tập excel này

Tình hình là mình lên mạng down bài này về nhưng tới đây thì bị bí xin các bạn giải giúp bài này, nếu có gì sai mong các mod tha thứ
 

File đính kèm

mọi người giải giúp em bài tập này với ạ . em đang bí àm cần gấp quá nen mong ác anh chị giải giúp em với
 

File đính kèm

Đây là ý kiến cá nhân của mình. Còn mình ko chắc chắn là đúng đâu.
Nếu bạn nhờ được các anh/chị/thầy/chú: nguyencanh, leonguyen, ndu, Ba Tê ..... thì bảo đảm đúng 100%.
Ở cái ý số 6 ý, bạn sài auto filter hay advanced filter đều đc, ở đây mình sài auto filter.
 

File đính kèm

Đây là ý kiến cá nhân của mình. Còn mình ko chắc chắn là đúng đâu.
Nếu bạn nhờ được các anh/chị/thầy/chú: nguyencanh, leonguyen, ndu, Ba Tê ..... thì bảo đảm đúng 100%.
Ở cái ý số 6 ý, bạn sài auto filter hay advanced filter đều đc, ở đây mình sài auto filter.
Tự tin lên chứ bác =)) 100% rồi còn gì
 
các bạn ơi, ai cao thủ giúp mình cái bài này với:
bt3.JPG
muốn tính được điểm hoà vốn phải có định phí, biến phí của từng sp, cái này nó cho tổng bp và đp z sao tách ra được? huhu
 
Các bác cho mình hỏi chút với ạ. Mình định lọc dữ liệu sử dụng filter Advanced để trí ra 1 bảng khác nhưng không biết ghi điều kiện không có blank trong ô kiểu j.
VD như: STT đk khác blank
Nhờ các bác giúp đỡ ạ
 
Các bác cho mình hỏi chút với ạ. Mình định lọc dữ liệu sử dụng filter Advanced để trí ra 1 bảng khác nhưng không biết ghi điều kiện không có blank trong ô kiểu j.
VD như: STT đk khác blank
Nhờ các bác giúp đỡ ạ
Bạn gõ tiêu đề STT và điều kiện là <>
 
Các bác cho mình hỏi chút với ạ. Mình định lọc dữ liệu sử dụng filter Advanced để trí ra 1 bảng khác nhưng không biết ghi điều kiện không có blank trong ô kiểu j.
VD như: STT đk khác blank
Nhờ các bác giúp đỡ ạ

Điều kiện khác rổng sẽ được ghi thế này: <>
Tương tự thế với điều kiện = rổng sẽ ghi thế này: '=
 
Tìm kết quả cho phần vượt định mức và trong định mức

Cả nhà e có bài tập này mà e tìm công thức tổng hợp rồi mà vẫn ko ra. Nên e up lên nhờ cả nhà giải hộ nhé . Thanks!+-+-+-+
 

File đính kèm

Cả nhà e có bài tập này mà e tìm công thức tổng hợp rồi mà vẫn ko ra. Nên e up lên nhờ cả nhà giải hộ nhé . Thanks!+-+-+-+
Công thức:
Mã:
=IF(I3<H3,(I3+(H3-I3)*VLOOKUP(LEFT(D3,2),$A$12:$E$14,3,0)),H3)*VLOOKUP(LEFT(D3,2),$A$12:$E$14,5,0)
 
Chào các anh chị, mình có 1 file này mà không biết phải làm sao để tính. Cột A, B là cở sở dữ liệu từ hệ thống, có định ngày customer " dd/mm/yyyy hh:mm " , hiện giờ mình muốn tính cột C sẽ = cột B - cột A, kết quả là thời gian ( tính theo giờ:phút , VD là 2h 15' .... ) . Anh chị nào xem hướng dẫn giúp mình.
 

File đính kèm

Chào các anh chị, mình có 1 file này mà không biết phải làm sao để tính. Cột A, B là cở sở dữ liệu từ hệ thống, có định ngày customer " dd/mm/yyyy hh:mm " , hiện giờ mình muốn tính cột C sẽ = cột B - cột A, kết quả là thời gian ( tính theo giờ:phút , VD là 2h 15' .... ) . Anh chị nào xem hướng dẫn giúp mình.
Bạn sử dụng công thức tách giá trị thời gian bên phải (vì dữ liệu dạng text), sau đó định dạng lại là giờ:phút:
Mã:
=VALUE(RIGHT(B2,LEN(B2)-FIND(" ",B2)))-VALUE(RIGHT(A2,LEN(A2)-FIND(" ",A2)))
Định dạng thì chuột phải, chọn Format cells, Number, Custom, Type: "hh:mm", Ok.
 
Bạn sử dụng công thức tách giá trị thời gian bên phải (vì dữ liệu dạng text), sau đó định dạng lại là giờ:phút:
Mã:
=VALUE(RIGHT(B2,LEN(B2)-FIND(" ",B2)))-VALUE(RIGHT(A2,LEN(A2)-FIND(" ",A2)))
Định dạng thì chuột phải, chọn Format cells, Number, Custom, Type: "hh:mm", Ok.

Cám ơn anh nhiều, công thức rất tuyệt, nhưng còn 1 số chỗ tính nó ko ra, mình thấy nhưng ô bị ###### là giá trị trả về > 24h , nếu các giá trị > 24h đó, anh xem có cách nào hiện thị là con số không ( 48h, 50h hay 1d 2h...) miễn sao nó ko phải là #### là mình có thể lấy đc giá trị.

error.jpg
 
Cám ơn anh nhiều, công thức rất tuyệt, nhưng còn 1 số chỗ tính nó ko ra, mình thấy nhưng ô bị ###### là giá trị trả về > 24h , nếu các giá trị > 24h đó, anh xem có cách nào hiện thị là con số không ( 48h, 50h hay 1d 2h...) miễn sao nó ko phải là #### là mình có thể lấy đc giá trị.

View attachment 98981
Bạn đặt hàm Max(0,công thức trên) thử xem. Bạn có muốn tính ra số luôn hay là dùng số không?
Nếu muốn tính ra số giờ thì đặt thêm IF(công thức<0,24,0)+công thức.
Công thức ở bài #292.
 
Status
Không mở trả lời sau này.

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

Back
Top Bottom