Hỏi về viết thủ tục copy trong Excel. (1 người xem)

Liên hệ QC

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

mancity86

Thành viên mới
Tham gia
16/4/12
Bài viết
11
Được thích
5
Kính gửi các cao thủ excel trong diễn đàn.

Mình là thành viên mới, đang tập tọe học VBA trong excel.

Mình có file có 2 shéets. Sheét 1 là sheet dữ liệu. Sheet 2 là sheet nội dung tổng hợp lại.

Mình muốn cóp những dữ liệu từ sheet 1 mà có điều kiện thỏa mãn là các phòng MM, FX, bond sang sheet 2 để tổng hợp nhưng ko biết dùng VBA như nào

Kính mong cao thủ khai sáng cho tại hạ đoạn code đơn giản trên. Cám ơn các cao thủ.//**/
 

File đính kèm

Lần chỉnh sửa cuối:
Record Marco: Auto Filter "MM", Copy và Paste qua Sheet2 B7, tương tự cho 3 cái (nếu bạn làm 3 bảng, còn không thì Filter Array("MM","FX","Bond") trả ra 1 bảng kết quả).
Tham khảo code sau:
[gpecode=vb]
Sub AtFt()
Application.ScreenUpdating = False
With Sheet1
.Range("$A$1:$L$18").AutoFilter 3, "MM"
.Range("$A$2:$L$18").SpecialCells(12).Copy Sheet2.Range("B7")
.Range("$A$1:$L$18").AutoFilter 3, "FX"
.Range("$A$2:$L$18").SpecialCells(12).Copy Sheet2.Range("B17")
.Range("$A$1:$L$18").AutoFilter 3, "Bond"
.Range("$A$2:$L$18").SpecialCells(12).Copy Sheet2.Range("B26")
.ShowAllData
End With
Application.ScreenUpdating = True
End Sub
[/gpecode]
Phương thức SpecialCells(12) là chọn những cell đang hiển thị trong vùng được chọn.
Nhờ các Thầy xem dùm, code chạy chậm quá.
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Cám ơn bạn leonguyenz.

Mình hỏi thêm 1 chút nữa. Nếu trong trường hợp mà thêm điều kiện lọc chẳng hạn Currency trùng nhau thì mình gộp tổng của các giao dịch trên vào trong sheet 2 thì làm như thế nào.

Ý mình là sheet 2 sẽ thể hiện số tổng của các giao dịch MM và FX, Bond theo loại tiền.

Cám ơn bạn.

Application.ScreenUpdating: lệnh này nghĩa là như nào bạn ơi.
 
Upvote 0
Cám ơn bạn leonguyenz.

Mình hỏi thêm 1 chút nữa. Nếu trong trường hợp mà thêm điều kiện lọc chẳng hạn Currency trùng nhau thì mình gộp tổng của các giao dịch trên vào trong sheet 2 thì làm như thế nào.

Ý mình là sheet 2 sẽ thể hiện số tổng của các giao dịch MM và FX, Bond theo loại tiền.

Cám ơn bạn.

Application.ScreenUpdating: lệnh này nghĩa là như nào bạn ơi.
Mình nghĩ bài này bạn nên sử dụng PivotTable, Sort, tính toán, ... báo cáo sẽ rất rõ ràng.
Và xem cái này: [h=1]Hỏi về lệnh Application.Screen.Updating[/h]
 
Upvote 0
Bạn leonguyenz ơi.

Lọc 2 điều kiện thì như nào vậy. Giả dụ muốn lọc MM và Currency thì cú pháp autofilter như nào (lọc auto filter 2 điều kiện)

Cám ơn bạn nhé vì mình học theo cách mày mò mày mò nên không theo quy củ chút nào. :)/
 
Upvote 0
Bạn leonguyenz ơi.

Lọc 2 điều kiện thì như nào vậy. Giả dụ muốn lọc MM và Currency thì cú pháp autofilter như nào (lọc auto filter 2 điều kiện)

Cám ơn bạn nhé vì mình học theo cách mày mò mày mò nên không theo quy củ chút nào. :)/
Bạn tập Record Marco sẽ thấy mà:
[gpecode=vb]
.Range("$A$1:$K$18").AutoFilter 3, "MM"
.Range("$A$1:$K$18").AutoFilter 2, "VND"
[/gpecode]
 
Upvote 0
Uh. hì hì. em low tech quá. nãy giờ mày mò kiểu .Range("$A$1:$K$18").AutoFilter 3, "MM" & .autofilter 2, "VND" mà không ra.

Cám ơn anh leonguyenz.
 
Upvote 0

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

Back
Top Bottom