Đếm số ô trong bảng tính Excel ??????

Liên hệ QC

thanlong882

Thành viên mới
Tham gia
7/9/10
Bài viết
23
Được thích
2
Em có 1 rắc rối sau các bác giải quyết giúp em với nha???
-Mình có 1 file excel như hình bên cạnh.vi du.JPG
-Dùng chuột chọn 1 vùng từ C4:E16,bây giờ mình chỉ muốn đếm số cell đc chon trong cột C thì phải làm thế nào hả mọi người ?

Mình đã thử viết code bằng Macro 4.0 như sau nhưng không đc, mà nó đếm số cell của toàn vùng đc chọn.
mọi người chỉ giáo giúp nha.
Thank mọi người nhiều
Code:
iRow=ROW(ACTIVE.CELL())
rowCount = 0
=FOR("it",SELECTION(),FALSE)
rowCount = rowCount +1
=NEXT()
 
Em có 1 rắc rối sau các bác giải quyết giúp em với nha???
-Mình có 1 file excel như hình bên cạnh.View attachment 56590
-Dùng chuột chọn 1 vùng từ C4:E16,bây giờ mình chỉ muốn đếm số cell đc chon trong cột C thì phải làm thế nào hả mọi người ?

Mình đã thử viết code bằng Macro 4.0 như sau nhưng không đc, mà nó đếm số cell của toàn vùng đc chọn.
mọi người chỉ giáo giúp nha.
Thank mọi người nhiều
Code:
iRow=ROW(ACTIVE.CELL())
rowCount = 0
=FOR("it",SELECTION(),FALSE)
rowCount = rowCount +1
=NEXT()

Thử code sau nhé

Mã:
Sub test()
  MsgBox Selection.Cells.Count
End Sub
 
Thank bác nhiều, nhưng bác vẫn chưa hiểu ý tôi
Cách của bác là đếm toàn bộ số cell rồi, mình muốn chọn 1 vùng ví dụ từ C4:E16 nhưng chỉ đếm và trả về giá trị các Cell trong vùng từ C4:C16 thôi.
 
Thank bác nhiều, nhưng bác vẫn chưa hiểu ý tôi
Cách của bác là đếm toàn bộ số cell rồi, mình muốn chọn 1 vùng ví dụ từ C4:E16 nhưng chỉ đếm và trả về giá trị các Cell trong vùng từ C4:C16 thôi.
Thì như cách của Domfootwear nhưng thay Cells bởi Rows là được.
Hoặc dùng cách này cũng được:
PHP:
Sub Thu()
    MsgBox Intersect(Selection, [C:C]).Cells.Count
End Sub
 
Lần chỉnh sửa cuối:
Thì như cách của Domfootwear nhưng thay Cells bởi Rows là được.
Hoặc dùng cách này cũng được:
PHP:
Sub Thu()
    MsgBox Intersect(Selection, [C:C]).Cells.Count
End Sub
Không đúng à nha! Đã nói là Selection thì người ta chọn đâu mà chẳng được (ai cấm họ chọn 1 vùng không có cột C) --> Nếu tôi chọn vùng H1:K10 thì code chạy sao đây
Tôi nghĩ là cái này:
PHP:
Sub Test()
  MsgBox Selection.Resize(, 1).Count
End Sub
Resize thành 1 cột là xong --> Đương nhiên code này chỉ áp dụng cho trường hợp Selection là 1 vùng liên tục
 
Đương nhiên code này chỉ áp dụng cho trường hợp Selection là 1 vùng liên tục

Vậy thì "độ" lại của ndu một tí cho vui:

Mã:
Sub Test()
    NumberOfSelectedAreas = Selection.Areas.Count
    If NumberOfSelectedAreas > 1 Then
        MsgBox "Ban khong the thuc hien lenh nay tren nhieu vung chon!"
        Exit Sub
    End If
MsgBox Selection.Resize(, 1).Count
End Sub
 
Selection.Rows.Count cũng được nè. Nhưng cũng trên 1 vùng thôi.
 
Không đúng à nha! Đã nói là Selection thì người ta chọn đâu mà chẳng được (ai cấm họ chọn 1 vùng không có cột C) --> Nếu tôi chọn vùng H1:K10 thì code chạy sao đây
Tôi nghĩ là cái này:
PHP:
Sub Test()
MsgBox Selection.Resize(, 1).Count
End Sub
Resize thành 1 cột là xong --> Đương nhiên code này chỉ áp dụng cho trường hợp Selection là 1 vùng liên tục
Cái này cũng chưa ổn à nha, bởi vì yêu cầu của tác giả là chỉ đếm số ô trên cột C được chọn thôi. Với code của anh thì nếu chọn H1:K10 sẽ cho ra kết quả là 10 ---> trật lất, phải là 0 mới đúng!
Thử chỉnh lại code trên một xíu:
PHP:
Sub Thu()
    Dim Rws As Long
    On Error Resume Next
    Rws = Intersect(Selection, [C:C]).Cells.Count
    MsgBox Rws
End Sub
Code này cho phép chọn thoải mái, liên tục hay rời rạc đều được, có cột C hay không cũng OK.
 
Cái này cũng chưa ổn à nha, bởi vì yêu cầu của tác giả là chỉ đếm số ô trên cột C được chọn thôi. Với code của anh thì nếu chọn H1:K10 sẽ cho ra kết quả là 10 ---> trật lất, phải là 0 mới đúng!
Thử chỉnh lại code trên một xíu:
PHP:
Sub Thu()
    Dim Rws As Long
    On Error Resume Next
    Rws = Intersect(Selection, [C:C]).Cells.Count
    MsgBox Rws
End Sub
Code này cho phép chọn thoải mái, liên tục hay rời rạc đều được, có cột C hay không cũng OK.
Oh... tôi không nghĩ thế! Tôi nghĩ tác giả chỉ ví dụ thôi, tác giả nói:
Dùng chuột chọn 1 vùng từ C4:E16,bây giờ mình chỉ muốn đếm số cell đc chon trong cột C
Và tôi ngầm hiểu rằng đếm số ô trong cột đầu tiên của vùng chọn đấy
 
Tính tổng và đếm số phần tử của 1 vùng được chọn ???

Đầu tiên mình xin cảm ơn tất cả mọi người đã giúp đỡ mình giải đáp các thắc mắc.
Mọi người giải quyết giúp mình 1 vấn đề nữa nha
Mình muốn hỏi mọi người cách tính tổng và đếm sô phần tử mà mình đã chọn để tính tổng đó
tinh tong.JPG
Đề bài là mình chọn 1 vùng bất kì và tính tổng sau đó in ra như trong hình trên
Mình đã tạo 1 file đính kèm trong đó mình đã thiết kế cách code Macro4 để tao menu
khi tao Menu xong mình chọn 1 vùng cần tính sau đó chọn lệnh trong Menu nó sẽ tính ra kết quả
Mọi nguòi giúp mình nha
thank nhiều nhiều !
 

File đính kèm

  • tinh tong.xls
    14 KB · Đọc: 37
Đầu tiên mình xin cảm ơn tất cả mọi người đã giúp đỡ mình giải đáp các thắc mắc.
Mọi người giải quyết giúp mình 1 vấn đề nữa nha
Mình muốn hỏi mọi người cách tính tổng và đếm sô phần tử mà mình đã chọn để tính tổng đó
View attachment 56615
Đề bài là mình chọn 1 vùng bất kì và tính tổng sau đó in ra như trong hình trên
Mình đã tạo 1 file đính kèm trong đó mình đã thiết kế cách code Macro4 để tao menu
khi tao Menu xong mình chọn 1 vùng cần tính sau đó chọn lệnh trong Menu nó sẽ tính ra kết quả
Mọi nguòi giúp mình nha
thank nhiều nhiều !
cái bạn yêu cầu có vẽ giống với các Function tại thanh Status
Xem bài này nhé:
http://www.giaiphapexcel.com/forum/...í-với-các-công-thức-Excel&p=244283#post244283
Dùng toàn Macro 4 đấy
File Download
 
Web KT
Back
Top Bottom