Đếm sự xuất hiện của 1 kí tự giữa hai kí tự cho trước. (1 người xem)

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

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

echo07

Nguyệt Hà
Tham gia
24/8/07
Bài viết
436
Được thích
318
Bài này rắc rối quá. các bác rút gọn lại giùm.
 

File đính kèm

Công thức của Cop_kh thiếu rồi, còn: cột E có giá trị là 1 nữa.

=IF(AND(C2="SW", D2>1, E2=1), "OK", "")

Nói ngoài lề, cái file của bạn bị thiết lập Calculate là MANUAL, nên bạn phải nhấn F9 sau khi nhập công thức, nếu không sẽ không thấy công thức chạy đâu...
 
Ủa? Như vậy là sao? Vậy là yêu cầu của tác giả là trả về OK khi đủ điều kiện hay là "Đếm sự xuất hiện của 1 kí tự giữa hai kí tự cho trước" như tên của topic???
 
To: huuthang_bd
user_online.gif
Em nghĩ chả ra yêu cầy nào hay hơn nên mới viết vậy. cụ thể yeu cầu em để trong file.
To:BNTTcop_kh
user_online.gif
.
Làm như các bác em cũng biết. Vấn đề không phải như vậy. Hãy xem kỹ yêu cầu của em và làm sao cho đúng kết quả như vậy cơ.
 
Lần chỉnh sửa cuối:
Bài toán này e rằng phải dùng đến VBA thôi! Không biết ý bạn thế nào? Thân.
 
Lần chỉnh sửa cuối:
Không dùng VBA em cũng làm được đó thôi xong rắc rối nhỉ? Nếu có thể các pac viết giùm đoạn code. Em chỉ biết chạy thôi.
 
Thôi thì viết như vầy xem có đúng không nha! Vậy bạn nhấn vào nút "Chạy" để chạy code. Và bạn test nha! (Có file đính kèm đó). Thân.
 

File đính kèm

Lần chỉnh sửa cuối:
Máy em bị lỗi hay sao mà down về ra toàn ô vuông không hà. Pac làm ơn gửi code lên để em chép về vậy.
 
Máy em bị lỗi hay sao mà down về ra toàn ô vuông không hà. Pac làm ơn gửi code lên để em chép về vậy.
Chào bạn! Tôi xem file xong cũng ko hiểu lắm... Nhưng theo những gì bạn thể hiện trong công thức thì tôi nghĩ có thể rút gọn lại thành 1 công thức (ko cần Pivottable)
PHP:
=IF(AND(SUMPRODUCT(($A$2:$A$20=$A2)*($B$2:$B$20>0)*($C$2:$C$20="SW"))=SUMPRODUCT(($A$2:$A$20=$A2)*($D$2:$D$20<>"")*($C$2:$C$20="SW")),$E2=1),"OK","")
 

File đính kèm

Thanh kiu pac Antuan1066. Em biết thế nào pac cũng có cách giải quyết mà. Bài toán của em đương nhiên cột B sẽ có dữ liệu nên em sẽ bỏ điều kiện đó đi. Khi nào vướng sẽ nhờ đến các bác nữa.
 
Lần chỉnh sửa cuối:
Bạn thử tải lại lần nữa xem. Có thể do lỗi đường truyền mạng đó. Nhưng mà cho mình hỏi 1 chút nha! Đây là code của nó đây.
Mã:
Sub chay() For i = 1 To [E50000].End(xlUp).Row If i >= [E50000].End(xlUp).Row Then Exit Sub If Cells(i, 5) = 1 Then     For j = i + 1 To i + 10     If Cells(j, 5) = 1 Then Exit For     Next     If WorksheetFunction.CountIf(Range("C" & i & ":C" & j - 1), "SW") = _     WorksheetFunction.CountA(Range("D" & i & ":D" & j - 1)) Then     Cells(i, 6) = "OK"     End If     i = j - 1 End If Next End Sub
Bạn thử tải lại file này xem. Thân.
 

File đính kèm

Lần chỉnh sửa cuối:
thankyou Po_Pikachu em chép code của bác về chạy ngon lành rồi. Em sẽ dùng cả hai cách của pác và pác Anhtuan1066.
thanks again.
 
Web KT

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

Back
Top Bottom