code copy sang cột kế tiếp mỗi khi dữ liệu nhập vào có thay đổi

Liên hệ QC

hoahongden142917

Thành viên hoạt động
Tham gia
28/5/13
Bài viết
179
Được thích
20
Mình có file này, ở cột G3:G6 là nó tự động tổng điểm theo tổ (N1, N2, N3, N4) khi các tổ đánh giá chéo nhau trong vùng dữ liệu C3:G16
Cột L3:L47 sẽ có 1 macro gán điểm cho mỗi em hs ở tổ tương ứng đã được gán ở cột K.
Mình đang loay hoay với một code copy cột L để dán qua cột kế tiếp bên phải cột L và cứ thế copy tiếp tục qua cột kế bên M,... next nhưng khi mình bấm vào macro ở cột L thì lệnh copy này mới thực hiện,
Mong các anh chị giúp đỡ. xin cảm ơn
 

File đính kèm

  • ĐG chéo lý 9a2.xlsb
    25.4 KB · Đọc: 10
Tìm cột cuối rồi copy paste thôi

PHP:
Sub laydiemtheonhom()

' 'lay diem theo nhom cho tung ca nhan
Lastcol = [AZ3].End(xlToLeft).Column
    With [L3:L47]
   .FormulaR1C1 = _
        "=IF(RC11<>"""",INDEX(OFFSET(R3C2:R6C2,,5),MATCH(RC11,R3C2:R6C2,0)),"""")"
    .Value = .Value
   .Copy Cells(3, Lastcol + 1)
    End With
End Sub
 
Upvote 0
Tìm cột cuối rồi copy paste thôi

PHP:
Sub laydiemtheonhom()

' 'lay diem theo nhom cho tung ca nhan
Lastcol = [AZ3].End(xlToLeft).Column
    With [L3:L47]
   .FormulaR1C1 = _
        "=IF(RC11<>"""",INDEX(OFFSET(R3C2:R6C2,,5),MATCH(RC11,R3C2:R6C2,0)),"""")"
    .Value = .Value
   .Copy Cells(3, Lastcol + 1)
    End With
End Sub
đúng rồi. cảm ơn bạn nhiều.
 
Upvote 0
Một cách khác, không dùng dữ liệu trung gian tại cột G
PHP:
Sub LAYDIEM()
Dim lr&, lc&
lc = Range("J3").End(xlToRight).Column
lr = Cells(Rows.Count, "K").End(xlUp).Row
With Range(Cells(3, lc + 1), Cells(lr, lc + 1))
    .Formula = "=SUMPRODUCT(($B$3:$B$16=K3)*$C$3:$F$16)/3"
    .Value = .Value
End With
End Sub
 

File đính kèm

  • ĐG chéo lý 9a2b.xlsb
    27.9 KB · Đọc: 7
Upvote 0
Web KT

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

Back
Top Bottom