Giúp em bài toán tìm số xuất hiện nhiều nhất trong nhiều Sheet (3 người xem)

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

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

LinDan

Thành viên tiêu biểu
Tham gia
8/2/12
Bài viết
412
Được thích
111
Em thí nghiệm thử với 2 Sheet, sau đó tự động mở rộng ra nhiều Sheet.

Em làm như sau
PHP:
=Sheet1!$I$1:$I$2
sau đó kết quả đặt
PHP:
=MODE(INDIRECT(Sh&"!A1:D3"))
nhưng thử thay đổi mãi không được, mà không biết sửa thế nào cho đúng
 

File đính kèm

Em thí nghiệm thử với 2 Sheet, sau đó tự động mở rộng ra nhiều Sheet.

Em làm như sau
PHP:
=Sheet1!$I$1:$I$2
sau đó kết quả đặt
PHP:
=MODE(INDIRECT(Sh&"!A1:D3"))
nhưng thử thay đổi mãi không được, mà không biết sửa thế nào cho đúng
Dùng VBA cho khỏe anh ạ, em e là MODE không chạy được Multiple Sheets nó không hiểu được anh muốn tham chiếu đến nhiều sheet, nên dù có bấm Ctrl+Shift+ Enter cũng không ăn thua hic hic :
PHP:
Sub NhiuNhat()
Dim sH As Worksheet
With Sheet1
For Each sH In Worksheets
sH.Range("A1:D3").Copy .[AA65536].End(xlUp).Offset(1)
Next
    MsgBox "So xuat hien nhieu nhat la:" & Application.WorksheetFunction.Mode(.Range("AA1:AD" & [AD65536].End(xlUp)))
    .Range("AA1:AD" & [AD65536].End(xlUp)).Delete
End With
End Sub
 
Lần chỉnh sửa cuối:
Dùng VBA cho khỏe anh ạ, em e là MODE không chạy được Multiple Sheets nó không hiểu được anh muốn tham chiếu đến nhiều sheet, nên dù có bấm Ctrl+Shift+ Enter cũng không ăn thua hic hic :
PHP:
Sub NhiuNhat()
Dim sH As Worksheet
With Sheet1
For Each sH In Worksheets
sH.Range("A1:D3").Copy .[AA65536].End(xlUp).Offset(1)
Next
    MsgBox "So xuat hien nhieu nhat la:" & Application.WorksheetFunction.Mode(.Range("AA1:AD" & [AD65536].End(xlUp)))
    .Range("AA1:AD" & [AD65536].End(xlUp)).Delete
End With
End Sub

Cảm ơn em rất nhiều, nhưng liệu mình có tìm thêm được giải pháp nào bằng công thức đối với bài này không (không dùng Mode nữa mà đi theo hướng dùng hàm khác chẳng hạn).
 
Em thí nghiệm thử với 2 Sheet, sau đó tự động mở rộng ra nhiều Sheet.

Em làm như sau
PHP:
=Sheet1!$I$1:$I$2
sau đó kết quả đặt
PHP:
=MODE(INDIRECT(Sh&"!A1:D3"))
nhưng thử thay đổi mãi không được, mà không biết sửa thế nào cho đúng

Tạm thời nghĩ ra được cách này:
1> Đặt name:
Mã:
=FREQUENCY(INDIRECT(Sh&"!A1:D3"),INDIRECT(Sh&"!A1:D3"))
2> Công thức:
Mã:
=MODE(INDIRECT("'"&LOOKUP(2,1/(tmp=MAX(tmp)),Sh)&"'!A1:D3"))
Ctrl + Shift + Enter
 
Mình nói thêm: Nếu máy các bạn có cài MoreFunc AddIn thì càng đơn giản, công thức chỉ vầy là đủ:
Mã:
MODE([COLOR=#ff0000][B]THREED[/B][/COLOR]('Sheet1:Sheet2'!A1:D3))
Trong đó THREED là hàm của Morefunc AddIn
 
Mình nói thêm: Nếu máy các bạn có cài MoreFunc AddIn thì càng đơn giản, công thức chỉ vầy là đủ:
Mã:
MODE([COLOR=#ff0000][B]THREED[/B][/COLOR]('Sheet1:Sheet2'!A1:D3))
Trong đó THREED là hàm của Morefunc AddIn
Và kết thúc vẫn phải Ctrl+Shift+ Enter mới được, hiiiiiiiii
 
Web KT

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

Back
Top Bottom