toandiennuoc123
Thành viên thường trực




- Tham gia
- 7/3/12
- Bài viết
- 239
- Được thích
- 9
File của bạn đây. Thay đổi chỉ số màu nếu màu đánh dấu là màu khác.Xin chào các thành viên trên diễn đàn, tôi có 1 file đính kèm muốn nhờ các thành viên giúp đỡ là " Tìm các ô trên và dưới ô màu đỏ ", trong file có các yêu cầu.Rất mong có câu trả lời của các thành viên.
Tôi xin chân thành cám ơn.
Bạn đọc đoạn code gán giá trị (đoạn for j=1 to i.....). Bạn có thể thay đổi tùy ý mà!Cám ơn bạn rất nhiều. Còn 1 chút thắc mắc nữa nếu được thì tốt quá, khi hiện các số cần tìm thì nó xuất hiện từ trên xuống dưới " có thể thêm từ trái qua phải được không ?"
File của bạn đây. Thay đổi chỉ số màu nếu màu đánh dấu là màu khác.
Private Sub CommandButton1_Click()
Dim Cll As Range, Vung As Range
Dim Tim(1 To 1000) As Variant
Dim i As Integer, j As Integer
Application.ScreenUpdating = False
Set Vung = Range("B3:M32")
For Each Cll In Vung
If Cll.Interior.ColorIndex = 3 Then
i = i + 1
Tim(i) = Cells(Cll.Row - 1, Cll.Column).Value
End If
Next
For j = 1 To i
Range("P" & j + 14).Value = Tim(j)
Next
Application.ScreenUpdating = True
End Sub
Private Sub CommandButton2_Click()
Dim Cll As Range, Vung As Range
Dim Tim(1 To 1000) As Variant
Dim i As Integer, j As Integer
Application.ScreenUpdating = False
Set Vung = Range("B3:M32")
For Each Cll In Vung
If Cll.Interior.ColorIndex = 3 Then
i = i + 1
Tim(i) = Cells(Cll.Row + 1, Cll.Column).Value
End If
Next
For j = 1 To i
Range("Q" & j + 14).Value = Tim(j)
Next
Application.ScreenUpdating = True
End Sub
Thì bạn bắt lỗi thôi......................................
Ngoài ra còn trường hợp ví dụ vùng chứa cả dòng 1 (A1:H15 chẳng hạn) mà ô B1 màu đỏ thì tất nhiên là không có dòng 0 rồi, hoặc ở dòng trên cùng/ dưới cùng của vùng tìm kiếm - vậy thì sẽ thêm dk như thế nào?
Mọi người vui lòng góp ý về 2 diểm trên
Nếu Cll.Row > 1 thì lấy giá trị trên
Nếu Cll.Row<65535 thì lấy giá trị dưới
Hic, xem lại bài 5 thì mình viết code thật là "lửng lơ"Thì bạn bắt lỗi thôi.
Mã:Nếu Cll.Row > 1 thì lấy giá trị trên Nếu Cll.Row<65535 thì lấy giá trị dưới
Xin chào các thành viên trên diễn đàn, tôi có 1 file đính kèm muốn nhờ các thành viên giúp đỡ là " Tìm các ô trên và dưới ô màu đỏ ", trong file có các yêu cầu.Rất mong có câu trả lời của các thành viên.
Tôi xin chân thành cám ơn.
Từ hôm qua đến nay có cái này rất thuận tiện.(bình thường làm mất một ngày mới xong, khi có cái này....1 h đồng hồ. " Tìm trước và sau ngày trả nợ, VD: nợ A 3 cái hóa đơn có ghi ngày là 1,2,3,... nhưng chỉ có tiền trả hóa đơn ngày 2 thôi (màu đỏ), tìm ngày nợ còn lại......" Cái vụ này nó có liên quan đến bài :Câu đố tháng 12-2007 - chủ đề SolverKhông biết cái vụ TÌM TRÊN, TÌM DƯỚI này áp dụng gì trong thực tế nhỉ? Bởi vì tôi thấy nó.. buồn cười sao ấy (mặc dù viết code hoàn toàn không có vấn đề)
Từ hôm qua đến nay có cái này rất thuận tiện.(bình thường làm mất một ngày mới xong, khi có cái này....1 h đồng hồ. " Tìm trước và sau ngày trả nợ, VD: nợ A 3 cái hóa đơn có ghi ngày là 1,2,3,... nhưng chỉ có tiền trả hóa đơn ngày 2 thôi (màu đỏ), tìm ngày nợ còn lại......" Cái vụ này nó có liên quan đến bài :Câu đố tháng 12-2007 - chủ đề Solver
Thầy xem hộ bài này (xin phép được gọi như vậy) , "Nhấn nút trả tiền" http://www.giaiphapexcel.com/forum/showthread.php?88283-Nhấn-nút-Trả-tiềnChưa biết file thực tế của bạn thế nào chứ tôi cũng đoán chắc vấn đề của bạn nằm ở CẤU TRÚC DỮ LIỆU
Bố trí dữ liệu không khoa học, mệt là phải rồi