steven_ngan
Thành viên mới

- Tham gia
- 12/1/09
- Bài viết
- 2
- Được thích
- 0
E có 1 sheet đánh dấu x để thể hiện người ta ký rồi hay chưa ?? Làm thế nào để đếm các dòng có dấu "x" trong cùng 1 cột ạ ! tks các bác !
Nếu chỉ có mỗi dấu "x" trong cột thể hiện cho việc ký rồi hay chưa thì chỉ cần dùng COUNTA là được.E có 1 sheet đánh dấu x để thể hiện người ta ký rồi hay chưa ?? Làm thế nào để đếm các dòng có dấu "x" trong cùng 1 cột ạ ! tks các bác !
=COUNTA(A1:A10)
Tạm thế này đi:làm sao để khi đánh dấu x vào 1 ô thì khác nhảy ra kết quả nhỉ (%) ai giúp em vs
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
If Target.Value = "x" Then
Target.Offset(0, 1).FormulaR1C1 = "%"
End If
End If
End Sub
Code làm gì cho mệt bạn. Condictional Formatings là được mà!Tạm thế này đi:
PHP:Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$1" Then If Target.Value = "x" Then Target.Offset(0, 1).FormulaR1C1 = "%" End If End If End Sub
E có 1 sheet đánh dấu x để thể hiện người ta ký rồi hay chưa ?? Làm thế nào để đếm các dòng có dấu "x" trong cùng 1 cột ạ ! tks các bác !
L5 =COUNTIFS($C$4:$C$51,K3,$F$4:$F$51,"<>",$F$4:$F$51,"*~*")Nhân đây mình xin Anh, Chị giúp mình xử lý kết quả thống kê học sinh học 1 buổi hoặc 2 buổi.
Mô tả nội dung và yêu cầu xử lý có diển giải trong file đính kèm. Xin chân thành cảm ơn
Dư dấu hỏi:Ngắn hơn một chút:
=COUNTIFS($C$4:$C$51,K3,$F$4:$F$51,"*?~*")
Ờ, định viết K trước nên viết "<>", sau mới thấy nên viết L trước, nên dư=COUNTIFS($C$4:$C$51,K3,$F$4:$F$51,"*~*")
Cảm ơn bạn nhiều. Nếu viết công thức độc lập K5 không phụ thuộc vào L5 thì mình viết như thế nào ạ.L5 =COUNTIFS($C$4:$C$51,K3,$F$4:$F$51,"<>",$F$4:$F$51,"*~*")
K5 =COUNTIFS($C$4:$C$51,K3,$F$4:$F$51,"<>") -L5
Copy 2 ô, paste cho 4 ô còn lại
=COUNTIFS($C$4:$C$51,K3,$F$4:$F$51,"<>*~*",$F$4:$F$51,"<>")Cảm ơn bạn nhiều. Nếu viết công thức độc lập K5 không phụ thuộc vào L5 thì mình viết như thế nào ạ.
Cảm ơn bạn đã giúp đỡ. Qua học hỏi thêm trên diễn đàn mình cũng chuyển được từ hàm COUNTIFS ( theo yêu cầu của nội dung ) sang code VBA như sau. Mong bạn tinh chỉnh lại dùm cho code gọn hơn.=COUNTIFS($C$4:$C$51,K3,$F$4:$F$51,"<>*~*",$F$4:$F$51,"<>")
Xem codeCảm ơn bạn đã giúp đỡ. Qua học hỏi thêm trên diễn đàn mình cũng chuyển được từ hàm COUNTIFS ( theo yêu cầu của nội dung ) sang code VBA như sau. Mong bạn tinh chỉnh lại dùm cho code gọn hơn.
Sub TK()
Dim lr As Long
lr = Worksheets("Sheet1").Cells(Rows.Count, 1).End(xlUp).Row
Sheets("Sheet1").Select
With Sheets("Sheet1")
'THONG KE HOC 1 BUOI 2 BUOI MAM 2015
Sheets("TK").Range("E10").Value = WorksheetFunction.CountIfs(Range("C4:C" & lr), Sheets("TK").Range("E8"), Range("F4:F" & lr), ("<>*~*"), Range("F4:F" & lr), ("<>"))
Sheets("TK").Range("F10").Value = WorksheetFunction.CountIfs(Range("C4:C" & lr), Sheets("TK").Range("E8"), Range("F4:F" & lr), ("*~*"))
'THONG KE HOC 1 BUOI 2 BUOI MAM 2016
Sheets("TK").Range("G10").Value = WorksheetFunction.CountIfs(Range("C4:C" & lr), Sheets("TK").Range("G8"), Range("F4:F" & lr), ("<>*~*"), Range("F4:F" & lr), ("<>"))
Sheets("TK").Range("H10").Value = WorksheetFunction.CountIfs(Range("C4:C" & lr), Sheets("TK").Range("G8"), Range("F4:F" & lr), ("*~*"))
'THONG KE HOC 1 BUOI 2 BUOI MAM 2017
Sheets("TK").Range("I10").Value = WorksheetFunction.CountIfs(Range("C4:C" & lr), Sheets("TK").Range("I8"), Range("F4:F" & lr), ("<>*~*"), Range("F4:F" & lr), ("<>"))
Sheets("TK").Range("J10").Value = WorksheetFunction.CountIfs(Range("C4:C" & lr), Sheets("TK").Range("I8"), Range("F4:F" & lr), ("*~*"))
Sheets("TK").Select
End With
End Sub
Sub TK()
Dim lr As Long, col As Long
Sheets("TK").Select
With Sheets("Sheet1")
lr = .Cells(Rows.Count, 1).End(xlUp).Row
For col = 5 To 9 Step 2
Cells(10, col).Value = WorksheetFunction.CountIfs(.Range("C4:C" & lr), Cells(8, col), .Range("F4:F" & lr), ("<>*~*"), .Range("F4:F" & lr), ("<>"))
Cells(10, col + 1).Value = WorksheetFunction.CountIfs(.Range("C4:C" & lr), Cells(8, col), .Range("F4:F" & lr), ("*~*"))
Next col
End With
End Sub
Một cách không dùng WorksheetFunction, Code gọn hơn hay không thì không biết.Cảm ơn bạn đã giúp đỡ. Qua học hỏi thêm trên diễn đàn mình cũng chuyển được từ hàm COUNTIFS ( theo yêu cầu của nội dung ) sang code VBA như sau. Mong bạn tinh chỉnh lại dùm cho code gọn hơn.
Sub TK()
Dim lr As Long
lr = Worksheets("Sheet1").Cells(Rows.Count, 1).End(xlUp).Row
Sheets("Sheet1").Select
With Sheets("Sheet1")
'THONG KE HOC 1 BUOI 2 BUOI MAM 2015
Sheets("TK").Range("E10").Value = WorksheetFunction.CountIfs(Range("C4:C" & lr), Sheets("TK").Range("E8"), Range("F4:F" & lr), ("<>*~*"), Range("F4:F" & lr), ("<>"))
Sheets("TK").Range("F10").Value = WorksheetFunction.CountIfs(Range("C4:C" & lr), Sheets("TK").Range("E8"), Range("F4:F" & lr), ("*~*"))
'THONG KE HOC 1 BUOI 2 BUOI MAM 2016
Sheets("TK").Range("G10").Value = WorksheetFunction.CountIfs(Range("C4:C" & lr), Sheets("TK").Range("G8"), Range("F4:F" & lr), ("<>*~*"), Range("F4:F" & lr), ("<>"))
Sheets("TK").Range("H10").Value = WorksheetFunction.CountIfs(Range("C4:C" & lr), Sheets("TK").Range("G8"), Range("F4:F" & lr), ("*~*"))
'THONG KE HOC 1 BUOI 2 BUOI MAM 2017
Sheets("TK").Range("I10").Value = WorksheetFunction.CountIfs(Range("C4:C" & lr), Sheets("TK").Range("I8"), Range("F4:F" & lr), ("<>*~*"), Range("F4:F" & lr), ("<>"))
Sheets("TK").Range("J10").Value = WorksheetFunction.CountIfs(Range("C4:C" & lr), Sheets("TK").Range("I8"), Range("F4:F" & lr), ("*~*"))
Sheets("TK").Select
End With
End Sub
Public Sub Gpe()
Dim sArr(), dArr(1 To 1, 1 To 6)
Dim I As Long, J As Long, R As Long, CoL As Long
sArr = Sheet1.Range("C4", Sheet1.Range("C4").End(xlDown)).Resize(, 4).Value
R = UBound(sArr)
For I = 1 To R
If sArr(I, 4) <> Empty Then
Select Case sArr(I, 1)
Case 2015
CoL = 1
Case 2016
CoL = 3
Case 2017
CoL = 5
End Select
If Right(sArr(I, 4), 1) = "*" Then
dArr(1, CoL + 1) = dArr(1, CoL + 1) + 1
Else
dArr(1, CoL) = dArr(1, CoL) + 1
End If
End If
Next I
Sheets("TK").Range("E10").Resize(, 6) = dArr
End Sub
Cảm ơn anh đã hổ trợ, tuy nhiên khi áp dụng code này vào thì khi chạy chương trình không hiện kết quả, mong tác giả chỉ thêm nha. Cảm ơn.Một cách không dùng WorksheetFunction, Code gọn hơn hay không thì không biết.
PHP:Public Sub Gpe() Dim sArr(), dArr(1 To 1, 1 To 6) Dim I As Long, J As Long, R As Long, CoL As Long sArr = Sheet1.Range("C4", Sheet1.Range("C4").End(xlDown)).Resize(, 4).Value R = UBound(sArr) For I = 1 To R If sArr(I, 4) <> Empty Then Select Case sArr(I, 1) Case 2015 CoL = 1 Case 2016 CoL = 3 Case 2017 CoL = 5 End Select If Right(sArr(I, 4), 1) = "*" Then dArr(1, CoL + 1) = dArr(1, CoL + 1) + 1 Else dArr(1, CoL) = dArr(1, CoL) + 1 End If End If Next I Sheets("TK").Range("E10").Resize(, 6) = dArr End Sub
Không hiện kết quả ở đâu vậy?Cảm ơn anh đã hổ trợ, tuy nhiên khi áp dụng code này vào thì khi chạy chương trình không hiện kết quả, mong tác giả chỉ thêm nha. Cảm ơn.