Remove Duplicate rồi đưa kết quả vào bộ nhớ (1 người xem)

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

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

vumian

Mỗi bậc thang là mỗi Cell
Tham gia
12/3/07
Bài viết
267
Được thích
186
Nghề nghiệp
employee only, not a boss
Hi all,

Mình làm chưa được nhu cầu này, GPE mình xem giúp

- Từ Excel 2007, có chức năng Remove Duplicate. Nhưng sau khi Remove Duplicate, thì Column ban đầu trả ra kết quả unique (đương nhiên column bị rút ngắn lại)
- Mình muốn : Remove Duplicate --> Nhưng Dữ liệu ban đầu giữ nguyên , Và Kết quả nằm trong bộ nhớ.

( Nhằm mục đích lấy kết quả đó dán vào gridview của ứng dụng khác)

Cám ơn,
vumian
 
Hi all,

Mình làm chưa được nhu cầu này, GPE mình xem giúp

- Từ Excel 2007, có chức năng Remove Duplicate. Nhưng sau khi Remove Duplicate, thì Column ban đầu trả ra kết quả unique (đương nhiên column bị rút ngắn lại)
- Mình muốn : Remove Duplicate --> Nhưng Dữ liệu ban đầu giữ nguyên , Và Kết quả nằm trong bộ nhớ.

( Nhằm mục đích lấy kết quả đó dán vào gridview của ứng dụng khác)

Cám ơn,
vumian
Theo mình thì mình sẽ làm như sau:
1. Hoặc là sử dụng Advanced filter với tùy chọn Unique record only và Copy to another location.
2. Hoặc là copy dữ liệu ban đầu sang 1 vùng tạm, sử dụng Remove duplicate, gán kết quả vào Gridview rồi xóa vùng tạm này đi. Làm như vậy thì dữ liệu nguồn không bị ảnh hưởng gì.
 
Upvote 0
Hi all,

Mình làm chưa được nhu cầu này, GPE mình xem giúp

- Từ Excel 2007, có chức năng Remove Duplicate. Nhưng sau khi Remove Duplicate, thì Column ban đầu trả ra kết quả unique (đương nhiên column bị rút ngắn lại)
- Mình muốn : Remove Duplicate --> Nhưng Dữ liệu ban đầu giữ nguyên , Và Kết quả nằm trong bộ nhớ.

( Nhằm mục đích lấy kết quả đó dán vào gridview của ứng dụng khác)

Cám ơn,
vumian
Không biết ứng dụng khác là gì? Bên ngoài Excel chăng? Nếu vậy tôi nghĩ bạn tự viết 1 Function RemoveDuplicates và cho kết quả vào 1 mảng ---> Thích mang đi đâu cũng được
(Tuy nhiên, nếu dữ liệu 1 dòng hoặc 1 cột thì dễ, ngược lại, nếu dữ liệu nhiều dòng nhiều cột thì viết hàm này cũng hơi khó 1 chút à nghen)
 
Upvote 0
Dear Anh,

- Ứng dụng khác là ngoài Excel. Cũng có dạng lưới như Excel, Sau khi lấy Unique Record, dán vô nó để lấy Report
- Em cũng có nghĩ đến mà Remove Duplicate rồi cho vào mảng. Nhưng làm sao sao viết cho vào bộ nhớ luôn. Để khi qua Ứng dụng khác, Chỉ việc Ctrl V thôi ah
- Anh có thể Demo thử dữ liệu 1 column trước ah

Cám ơn,
vumian
 
Lần chỉnh sửa cuối:
Upvote 0
Chào các anh, chị,

Mình muốn xóa các dòng liền kề có cùng số Memo và có tổng DR và CR = 0.
Ví dụ như hình bên ở dòng 27 và 28 sau khi chay code thì biến mất.

Mình không upload file được, nên mình up hình và code đính kèm, nhờ các cao thủ xem giúp code của mình bị lỗi ở đâu mà không chạy được nhé.

Cám ơn cả nhà.

danh sach.jpg

Code của mình như sau :

Sub Del_Duplicate()


Application.ScreenUpdating = False
Dim n As Long

With ThisWorkbook.Worksheets("0716") 'Luu y ten sheet

n = .Cells(6, 1).End(xlDown).Row - 5

'Create Name Manager for COUNTIFS

ThisWorkbook.Names.Add Name:="MEMO", RefersTo:=.Cells(6, 6).Resize(n, 1)
ThisWorkbook.Names.Add Name:="CRDR", RefersTo:=.Cells(6, 7).Resize(n, 1)
ThisWorkbook.Names.Add Name:="AMT", RefersTo:=.Cells(6, 8).Resize(n, 1)

Dim vMEMO As Variant, vCRDR As Variant, vAMT As Variant

vMEMO = [MEMO].Value
vCRDR = [CRDR].Value
vAMT = [AMT].Value

Dim CNT() As Variant

ReDim CNT(1 To n, 1 To 1)

Dim i As Long, r As Long, j As Long


For i = 1 To n

CNT(i, 1) = Application.WorksheetFunction.CountIfs([MEMO], vMEMO(i, 1), [CRDR], IIf(vCRDR(i, 1) = "DR", "CR", "DR"), [AMT], -vAMT(i, 1))

Next i

r = 0
For j = 1 To n
If CNT(j, 1) = 1 Then

.Rows(j + 5 - r).EntireRow.Delete
r = r + 1

End If
Next j


End With




End Sub
 
Upvote 0
xóa các dòng trùng nhau bằng VBA

Chào các anh, chị,

Mình đã tìm ra chỗ để upload file.

Mình muốn xóa các dòng trùng nhau có cùng Memo và tổng 2 dòng nếu là DR và CR có tổng = 0 thì xóa đi.

Nhờ các cao thủ xem giúp code trong file tại sao không chạy được nhé.

Cám ơn các cao thủ nhiều.

Mai
 

File đính kèm

Upvote 0
Web KT

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

Back
Top Bottom