Tìm và ghi nhớ vùng dữ liệu

Liên hệ QC

timkiem_abc

Thành viên mới
Tham gia
14/7/09
Bài viết
24
Được thích
15
A/C giúp code ghi nhớ vùng dữ liệu .
 

File đính kèm

  • file kèm.xls
    27.5 KB · Đọc: 22
Macro cho nút lệnh của bạn đây, xin mời

PHP:
Option Explicit
Sub GhiNhap()
 Dim Rng As Range, sRng As Range, Cls As Range
 
 Set Rng = Range([i5], [I65500].End(xlUp))
 For Each Cls In Range([A6], [A65500].End(xlUp))
    Set sRng = Rng.Find(Cls.Value, , xlFormulas, xlWhole)
    If Not sRng Is Nothing Then
        With sRng.Offset(, 2)
            .Value = .Value + Cls.Offset(, 2).Value
            .Offset(, 1).Value = .Offset(, 1).Value + Cls.Offset(, 3).Value
        End With
    End If
 Next Cls
End Sub
 
Upvote 0
A/C sửa dùm đoạn code

Tính tổng theo 2 điều kiện,code trong file mới đúng được 1,A/C sửa giúp .
 

File đính kèm

  • file kèm_1.xls
    23.5 KB · Đọc: 10
Upvote 0
Bạn thêm các dòng lệnh sau & nên chuyển toàn bộ macro vô module 1

Tính tổng theo 2 điều kiện,code trong file mới đúng được 1,A/C sửa giúp .
PHP:
Option Explicit
Sub GhiNhap()
 Dim Rng As Range, sRng As Range, Cls As Range
2 Dim MyAdd As String
 
 Set Rng = Range([i5], [I65500].End(xlUp))
 For Each Cls In Range([A6], [A65500].End(xlUp))
    Set sRng = Rng.Find(Cls.Value, , xlFormulas, xlWhole)
    If Not sRng Is Nothing Then
7        MyAdd = sRng.Address
        Do
9            If Cls.Offset(, 1).Value = sRng.Offset(, 1).Value Then
                With sRng.Offset(, 2)
                    .Value = .Value + Cls.Offset(, 2).Value
                    .Offset(, 1).Value = .Offset(, 1).Value + Cls.Offset(, 3).Value
                End With
14            End If
            Set sRng = Rng.FindNext(sRng)
16        Loop While Not sRng Is Nothing And sRng.Address <> MyAdd
    End If
 Next Cls
End Sub
 
Upvote 0
Web KT
Back
Top Bottom