cái này theo em dùng dictionary đượcNhờ các bác viết hộ hàm để đếm dữ liệu trong 1 bảng, (hoặc mảng) với ạ
Như hình em đính kèm .
E cảm ơn!
View attachment 288902
Dạ cụ thể như thế nào bác ? Bác viết hộ em công thức được không, để chuyển toàn bộ dữ liệu ở bảng B2:M4 sang cột P, mà đã bỏ đi các ô trống, và bỏ đi các dữ liệu trùng.Chỉ cần CountIf thì phải.
ý là muốn tìm 1 công thức cho 2 việc, vừa lọc trùng và vừa đếm luôn à
View attachment 288927Mã:=LET(x;UNIQUE(TOCOL(B2:M4));y;FILTER(x;x<>0);HSTACK(y;COUNTIF(B2:M4;y)))
1. Thêm hàm sort1- cột kết quả không sắp xếp theo thứ tự bảng chữ cái A-> Z
2- Đếm số thứ chữ hoa, chữ thường ra cùng 1 kết quả, như chữ A ra thì nó đếm "A", và 2 chữ "a" thành ra 3 chữ A
3- Có thể loại ô rỗng trong ô ,kiểu như hàm trim() không bạn?. Để các ký tự kiểu “A “, và “A” vẫn tính là 1 ký tự ấy ạ
Hàm If không dùng được với mảng.Em thấy khi đánh TRIM(B2:M4) thì nó vẫn là Range mà COUNTIF(TRIM(B2:M4),"A") nó không hoạt động thưa thầy.
Em thử chuyển qua hàm IF thì biến em đặt (biến a) khi đem so sánh "=" thì nó lỗi #NAME?
Kể cả hàm If có hoạt động, nhưng nếu bạn đặt hàm sum lồng ngoài hàm If thế kia thì kết quả chỉ là 1 con số, không trả được về mảng.Em thấy khi đánh TRIM(B2:M4) thì nó vẫn là Range mà COUNTIF(TRIM(B2:M4),"A") nó không hoạt động thưa thầy.
Em thử chuyển qua hàm IF thì biến em đặt (biến a) khi đem so sánh "=" thì nó lỗi #NAME?
View attachment 288993
Nếu phương án viết hàm gặp nhiều khó khăn thế này nhờ các bạn viết 1 phương án fuction code vba giúpKể cả hàm If có hoạt động, nhưng nếu bạn đặt hàm sum lồng ngoài hàm If thế kia thì kết quả chỉ là 1 con số, không trả được về mảng.
Thử hết mấy hàm bên trên đi đã. Tôi cho rằng bạn chửa thử hết mà đã nản.Nếu phương án viết hàm gặp nhiều khó khăn thế này nhờ các bạn viết 1 phương án fuction code vba giúp
Hàm này trả tất cả về chữ HoaLoại bỏ khoảng trắng, tính chữ hoa chữ thường.
=LET(a,UPPER(TRIM(B2:M4)),u,UNIQUE(TOCOL(IF(a<>"",a,k),3)),HSTACK(u,MAP(u,LAMBDA(x,SUM(N(a=x))))))