Bạn đưa file lên minh họa xem nào? mình vẫn chưa hiểu rõ ý đồ lắm.Nhờ các bạn viết giùm marco sau:Nếu cột A và B có giá trị thì cột C sẽ có giá trị là C và K.Thí dụ:
1. Ư. C
D. X. K
V. Z. C
S. O. K
2. H. C
7. J. K
........
Chân thành cảm ơn trước.
Nhờ các bạn viết giùm marco sau:Nếu cột A và B có giá trị thì cột C sẽ có giá trị là C và K.Thí dụ:
1. Ư. C
D. X. K
V. Z. C
S. O. K
2. H. C
7. J. K
........
Chân thành cảm ơn trước.
Sub thay_if()
Dim dl, i
Set dl = Range([a1], [k65536].End(3))
For i = 1 To dl.Rows.Count
If dl(i, 1) <> "" And dl(i, 2) <> "" Then
dl(i, 3) = dl(i, 3) & dl(i, 11)
End If
Next
End Sub
Em đã thử đoạn code của bác mà không chạy được.E gửi file đính kèm.sheet1 là theo code của bác,sheet2 là kết quả e muốn.Thanks.Không có file nên nhắm mắt tưởng tượng viết luôn, trật ráng chịu
PHP:Sub thay_if() Dim dl, i Set dl = Range([a1], [k65536].End(3)) For i = 1 To dl.Rows.Count If dl(i, 1) <> "" And dl(i, 2) <> "" Then dl(i, 3) = dl(i, 3) & dl(i, 11) End If Next End Sub
Bạn quanghai đã nói rồi mà:Em đã thử đoạn code của bác mà không chạy được.E gửi file đính kèm.sheet1 là theo code của bác,sheet2 là kết quả e muốn.Thanks.
Thử cái này xem, lấy code của quanghai, có file làm chưa chắc đã đúng ý.Không có file nên nhắm mắt tưởng tượng viết luôn, trật ráng chịu
Sub thay_if()
Dim dl, i, K
Set dl = Range([a3], [b65536].End(3))
For i = 1 To dl.Rows.Count
If dl(i, 1) <> "" And dl(i, 2) <> "" Then
If K = "C" Then
K = "K"
Else
K = "C"
End If
dl(i, 3) = K
End If
Next
End Sub
Nếu nhiều dòng quá nó không chạy bác ạ?Ít thì nó chạy nhưng chậm lắm,bác có cách gì khắc phục giùm e với.ThanksBạn quanghai đã nói rồi mà:
Thử cái này xem, lấy code của quanghai, có file làm chưa chắc đã đúng ý.
PHP:Sub thay_if() Dim dl, i, K Set dl = Range([a3], [b65536].End(3)) For i = 1 To dl.Rows.Count If dl(i, 1) <> "" And dl(i, 2) <> "" Then If K = "C" Then K = "K" Else K = "C" End If dl(i, 3) = K End If Next End Sub
Chơi kiểu gì mà "lút cán" luôn vậy "Chời".Nếu nhiều dòng quá nó không chạy bác ạ?Ít thì nó chạy nhưng chậm lắm,bác có cách gì khắc phục giùm e với.Thanks
Sub GPE()
Dim Rng(), Arr(), I As Long, Tem As String
Rng = Sheet1.[A3:B65536].Value
ReDim Arr(1 To 65534, 1 To 1)
For I = 1 To 65534
If Rng(I, 1) <> "" And Rng(I, 2) <> "" Then
If Tem = "C" Then
Tem = "K"
Else
Tem = "C"
End If
Arr(I, 1) = Tem
End If
Next I
Sheet1.[C3:C65536].Value = Arr
End Sub
Không gởi file thật lên ráng chịu, muốn cho nhanh thì gởi đồ thiệt lên. Chơi với đồ giả chán lắm.Nếu nhiều dòng quá nó không chạy bác ạ?Ít thì nó chạy nhưng chậm lắm,bác có cách gì khắc phục giùm e với.Thanks
Hai bác thông cảm,2 cột A và B của e nó thay đổi tuỳ theo dữ liệu,lúc nhiều lúc ít nên khi e thử cột A và B khoảng 700 dòng là nó chạy phải 30s mới xong.Thanks.Không gởi file thật lên ráng chịu, muốn cho nhanh thì gởi đồ thiệt lên. Chơi với đồ giả chán lắm.
Chạy quá tốt bác ạ.Cho e hỏi giờ nếu muốn chỉnh lại bắt đầu từ hàng A5 thì sửa A3 thành A5 và C3 thành C5 và sửa cái gì nữa vậy bác,e sửa 2 cái trên thì nó báo lỗi.Cảm ơn bác rất nhiều.Chơi kiểu gì mà "lút cán" luôn vậy "Chời".
Bạn Hải đã xài [B65536].End(3) mà bạn cho dữ liệu đến dòng 65536 luôn là tèo "gồi".
Muốn "chơi lút cán" luôn thì thử cái này coi, nhanh hay chậm không biết à nghe.
PHP:Sub GPE() Dim Rng(), Arr(), I As Long, Tem As String Rng = Sheet1.[A3:B65536].Value ReDim Arr(1 To 65534, 1 To 1) For I = 1 To 65534 If Rng(I, 1) <> "" And Rng(I, 2) <> "" Then If Tem = "C" Then Tem = "K" Else Tem = "C" End If Arr(I, 1) = Tem End If Next I Sheet1.[C3:C65536].Value = Arr End Sub
Chả hiểu dữ liệu kiểu gì mà tới dòng cuối luônChạy quá tốt bác ạ.Cho e hỏi giờ nếu muốn chỉnh lại bắt đầu từ hàng A5 thì sửa A3 thành A5 và C3 thành C5 và sửa cái gì nữa vậy bác,e sửa 2 cái trên thì nó báo lỗi.Cảm ơn bác rất nhiều.
Sub GPE()
Dim Rng(), Arr(), I As Long, Tem As String
Rng = Sheet1.[A5:B65536].Value
ReDim Arr(1 To UBound(Rng), 1 To 1)
For I = 1 To B65536
If Rng(I, 1) <> "" And Rng(I, 2) <> "" Then
Tem = IIf(Tem = "Y", "N", "Y")
Arr(I, 1) = Tem
End If
Next I
Sheet1.[c5].Resize(UBound(Rng)) = Arr
End Sub
Code không chạy bác ah?Chả hiểu dữ liệu kiểu gì mà tới dòng cuối luôn
PHP:Sub GPE() Dim Rng(), Arr(), I As Long, Tem As String Rng = Sheet1.[A5:B65536].Value ReDim Arr(1 To UBound(Rng), 1 To 1) For I = 1 To B65536 If Rng(I, 1) <> "" And Rng(I, 2) <> "" Then Tem = IIf(Tem = "Y", "N", "Y") Arr(I, 1) = Tem End If Next I Sheet1.[c5].Resize(UBound(Rng)) = Arr End Sub
Code không chạy bác ah?
Sub GPE()
Dim Rng(), Arr(), I As Long, Tem As String
Rng = Sheet1.[A5:B65536].Value
ReDim Arr(1 To UBound(Rng), 1 To 1)
For I = 1 To UBound(Rng)
If Rng(I, 1) <> "" And Rng(I, 2) <> "" Then
Tem = IIf(Tem = "Y", "N", "Y")
Arr(I, 1) = Tem
End If
Next I
Sheet1.[c5].Resize(UBound(Rng)) = Arr
End Sub