BẠN THỬ CHẠY ĐOẠN CODE NÀY XEM KẾT QUẢ THẾ NÀO NHÉEm đang tập tành ghi macro, các anh xem file và chỉ dạy giúp em
Cám ơn các anh
Sub GPE_Loc()
Dim Er As Long
With Application
.DisplayAlerts = False
.ScreenUpdating = False
End With
Sheets("Lifting Results").Select
Range("A:A,C:C,H:S,U:W,Z:AB,AD:AD").Select
Selection.Delete Shift:=xlToLeft
Set Rng = [A1].CurrentRegion
Rng.AutoFilter Field:=1, Criteria1:="<>KKLUHPH1*"
Rng.Offset(1).SpecialCells(12).EntireRow.Delete
Selection.AutoFilter
Er = [A6500].End(xlUp).Row
For i = 2 To Er
Tmp = Trim(Cells(i, 1))
Cells(i, 1) = Tmp
If Cells(i, 8) = "HAIPHONG" Then
Cells(i, 1).EntireRow.Hidden = True
Else
If Cells(i, 9) = "HAIPHONG" And Cells(i, 6) <> 0 Then
Cells(i, 1).EntireRow.Hidden = True
End If
End If
Next
Set Rng = [A1].CurrentRegion
Rng.Offset(1).SpecialCells(12).EntireRow.Delete
Rng.EntireRow.Hidden = False
With Application
.DisplayAlerts = True
.ScreenUpdating = True
End With
[A1].Select
End Sub
Cám ơn bác nhiều. Code viết rất dễ hiểuSub Trim()
'
' Trim Macro
' Macro recorded 23/10/2008 by Vu Van Sang
'
Range("C2").Select
ActiveCell.FormulaR1C1 = "=TRIM(RC[-1])"
Range("C2").Select
Selection.AutoFill Destination:=Range("C2:C1000")
Range("C2:C1000").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Selection.Copy
Range("B2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
Về nguyên lý, cái này phải lọc 2 lầnCode chạy ngon quá bác boy xịn ơi (mỗi tội trong đó chưa có đoạn TRIM)
Cám ơn bác nhiều. Code viết rất dễ hiểu
ST
Dim Ir As Long
Ir = [A10000].End(xlUp).Row
Range("C2").Select
ActiveCell.FormulaR1C1 = "=TRIM(RC[-1])"
Range("C2").Select
Selection.AutoFill Destination:=Range("C2:C&ir")
Range("C2:C&ir").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Selection.Copy
Range("B2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Mong MOD move giúp em bài này vào đúng vị trí
Lần sau hứa ko tái phạm
----------------------------------
Rất cám ơn Boyxin đã viết giúp đoạn code (ở bài gửi trước)
Do trình độ có hạn nên ST rất mong các anh viết hộ đoạn code (như trong file đính kèm)
Rất cám ơn anh chị
ST
Option Explicit
Dim Rng As Range, Str As String, idate As String, i As Long, Er As Long, Tmp As Long
Sub GPE_Loc()
Sheets(2).Select
With Application
.DisplayAlerts = False
.ScreenUpdating = False
End With
Range("A:A,C:C,E:G,J:M,O:O,Q:Q").Select
Selection.Delete Shift:=xlToLeft
Set Rng = [A1].CurrentRegion
Rng.AutoFilter Field:=7, Criteria1:="<>C"
Rng.Offset(1).SpecialCells(12).EntireRow.Delete
Selection.AutoFilter
Er = [A65536].End(xlUp).Row
For i = 2 To Er
idate = Mid(Cells(i, 8), 1, 10)
Cells(i, 8) = idate
Str = Trim(Cells(i, 1))
Cells(i, 1) = "KKLU" & Str
Tmp = Cells(i, 6)
If Cells(i, 1) = Cells(i - 1, 1) Then
Tmp = Tmp + Cells(i - 1, 6)
Cells(i - 1, 7).ClearContents
Cells(i, 6) = Tmp
End If
Cells(i, 6) = Tmp
Next
Range("G2:G" & Er).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
Range([A1], Selection.End(xlDown)).Columns.AutoFit
[A1].Select
With Application
.DisplayAlerts = True
.ScreenUpdating = True
End With
End Sub
Anh ơi code chạy tốt lắm
Công thức tính tổng (kiểu sumif rất hay, sáng tạo)
Nhưng em chưa thấy code chuyển định dạng TEXT về số nhỉ?
Nhưng còn một tí tẹo nữa là ngon, do định dạng cũ từ mạng lấy xuống
ví dụ: Tại sheet gốc (chưa chạy Macro: tại P341 & P346 có định dạng số là
38.12 và 66.88
Nhưng khi anh chuyển về địng dạng số --> nó thành 3812 và 6688 nên tổng tiền của em bị sai
Bác thêm đoạn code find(.) và replace giúp em thành (,) với
Cám ơn bác
Option Explicit
Dim Rng As Range, Str As String, idate As String, i As Long, Er As Long, Tmp As Long
Sub GPE_Loc()
Sheets(2).Select
With Application
.DisplayAlerts = False
.ScreenUpdating = False
End With
Range("A:A,C:C,E:G,J:M,O:O,Q:Q").Select
Selection.Delete Shift:=xlToLeft
Set Rng = [A1].CurrentRegion
Rng.AutoFilter Field:=7, Criteria1:="<>C"
Rng.Offset(1).SpecialCells(12).EntireRow.Delete
Selection.AutoFilter
Er = [A65536].End(xlUp).Row
For i = 2 To Er
idate = Mid(Cells(i, 8), 1, 10)
Cells(i, 8) = idate
Str = Trim(Cells(i, 1))
Cells(i, 1) = "KKLU" & Str
Tmp = Cells(i, 6)
If Cells(i, 1) = Cells(i - 1, 1) Then
Tmp = Tmp + Cells(i - 1, 6)
Cells(i - 1, 7).ClearContents
Cells(i, 6) = Tmp
End If
Cells(i, 6) = Tmp
Next
Range("G2:G" & Er).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
Range([A1], Selection.End(xlDown)).Columns.AutoFit
[A1].Select
With Application
.DisplayAlerts = True
.ScreenUpdating = True
End With
End Sub
Tmp As LongEm xem lại code có gì khác đâu vẫn khai báo vậy mà?
Dim tmp, i as longCác anh ơi, em tưởng 2 cách khai báo trên là giống nhau chứ nhỉ?
Hic, (chưa quen thì nhìn không thấy khác nhau là mấy) cứ thay đoạn khai báo biếnEm xem lại code có gì khác đâu vẫn khai báo vậy mà? anh chạy xong để ý ở phần FRT AMT đó
Thôi dù sao thế cũng ác lắm rồi
---------------
Ngoài lề chút:
- Em về Thanh Hà Hải Duơng (ngay chân cầu Lai) thì đã qua Kinh Môn Chưa hả bác
Dim Rng As Range, Str As String, idate As String, i As Long, Er As Long, Tmp As Long
Dim Rng As Range, Str As String, idate As String
Dim Tmp, idate As String, i As Long, Er As Long
Thử code này xem:Tôi có một file chứa dữ liệu tổng hợp về học lực và hạnh kiểm của học sinh cuối năm học (ở sheet1).
Tôi muốn sau khi nhập các dữ liệu ở sheet1 song thì ở sheet2 có một danh sách các em học sinh đạt danh hiệu học sinh giỏi; ở sheet3 có một danh sách các em học sinh đạt danh hiệu học sinh khá; ....
Làm thế nào? Các bạn giúp tôi với nhé!
Thank you very much!![]()
Sub Trichloc()
Dim i As Long
Sheets("hsg").[A6:G1000].Clear
Sheets("HSTT").[A6:G1000].Clear
With Sheets("lop").[A6].CurrentRegion
For i = 1 To 2
.AutoFilter 4, Choose(i, "G", "K"): .AutoFilter 5, "T"
.SpecialCells(12).Copy Destination:=Sheets(Choose(i, "hsg", "HSTT")).[A6]
Next i
End With
Sheets("lop").AutoFilterMode = False
End Sub
Chỉ là đánh số TT, dể thôi màMacro đó rất hay và tác dụng với tôi đó.
Tuy nhiên khi lọc ra danh sách mới thì cột số thứ tự tôi cần lần lượt chạy từ 1 đến hết - Bạn giúp tôi nhé! (trong mẫu là số thứ tự tương ứng ở sheet 1).
Sub Trichloc()
Dim i As Long
Application.ScreenUpdating = False
Sheets("hsg").[A6:G1000].Clear
Sheets("HSTT").[A6:G1000].Clear
With Sheets("lop").[A6].CurrentRegion
For i = 1 To 2
.AutoFilter 4, Choose(i, "G", "K"): .AutoFilter 5, "T"
.SpecialCells(12).Copy
With Sheets(Choose(i, "hsg", "HSTT")).[A6]
.PasteSpecial
If .CurrentRegion.Rows.Count > 1 Then
.CurrentRegion.Resize(, 1).SpecialCells(2, 1).Value = Evaluate("ROW(R:R)")
End If
End With
Next i
End With
Sheets("lop").AutoFilterMode = False
Application.ExecuteExcel4Macro ("ALERT(""" & Evaluate("TB") & """,2)")
Application.ScreenUpdating = True
End Sub
Bạn có để ý sau khi chạy code, có 1 câu thông báo hiện ra... Và bạn có thấy rằng nó là TIẾNG VIỆT CÓ DẤU đàng hoàng ---> Nó được tạo ra nhờ câu lệnh trên đấyCái dòng này trong code đó có ý nghĩa gì vậy bạn?
Application.ExecuteExcel4Macro ("ALERT(""" & Evaluate("TB") & """,2)")
Nếu có báo lổi chẳng qua là bạn copy thiếu mất name ---> Trong file gốc của tôi, ngoài code ra còn có name, vào menu Insert\Name\Define sẽ thấy ---> Name này dùng để hiển thị MsgBox tiếng Việt ---> Nếu bạn không thích có thể xóa đoạn.
Tôi đã Copy lại code sang một file khác thử thực hiện nhưng máy báo lỗi. Các bạn kiểm tra giúp xem tại sao nhé!
Nó dùng để copy những dòng nào đang hiện sau khi AutoFilter ---> Tương đương với việc bạn bấm Ctrl + G, chọn Special rồi chọn Visible cells onlyThế còn số 12 trong đoạn .SpecialCells(12).Copy có ý nghĩa gì vậy bạn?
Nếu như vậy thì khi thay số 12 thành số khác nó sẽ có tác dụng khác đúng không bạn?Nó dùng để copy những dòng nào đang hiện sau khi AutoFilter ---> Tương đương với việc bạn bấm Ctrl + G, chọn Special rồi chọn Visible cells only
Đúng vậy!Nếu như vậy thì khi thay số 12 thành số khác nó sẽ có tác dụng khác đúng không bạn?
Ví dụ: Số 11 = Last Cell
Số 10 = Dependents, ....
Cảm ơn các bạn vì bài viết này, các bạn có thể cho mình hỏi một tí được không. Mình đang mới bắt đầu tập tành VBA nên chưa rành lắm. Giả sử mình có cột mã tuyến được phân biệt bởi các tỉnh(VD tỉnh Quảng Trị giá trị trong cột có chữ QTI, Huế là TTH) và một cột là Loại cáp VD(cáp đồng 8x2x0.5, cáp quang 12 Fo). Mình muốn viết code lọc dữ liệu giả sử tỉnh Quảng Trị theo loại cáp gì đó và cho ra kết quả của giá trị tổng sau khi lọc. Mong các bạn giúp đỡ rất nhiều
Đương nhiên không thể gõ tiếng Việt vào cửa sổ VBE rôi, vì thế phải dùng tí xảo thuậtCode bạn ndu viết giùm theo nội dung hôm trước thì OK rồi. Tuy nhiên, khi mà học lực của HS chuyển thành tiếng việt có dấu thì lại không lọc được. Bạn xem và góp ý giùm cách xử lý xem nhé!
Đương nhiên phải dùng tí xảo thuật
(1)
.AutoFilter 4, Choose(i, "Gi" & ChrW(7887) & "i", "K"): .AutoFilter 5, "T"
ChrW(7887) tương đương với chử ỏ
(2)
Nếu rối quá thì mấy điều kiện lọc tiếng Việt này ta gõ trực tiếp lên cell luôn cho xong!
Ví dụ:
- Gõ chử Giỏi vào cell M1, chử K vào cell M2
- Sửa lại code thành:
.AutoFilter 4, Choose(i, [M1], [M2]): .AutoFilter 5, "T"
Có thể dùng " * " thay thế như sauĐương nhiên không thể gõ tiếng Việt vào cửa sổ VBE rôi, vì thế phải dùng tí xảo thuật
Code của bạn là:
.AutoFilter 4, Choose(i, "Giái", "K"): .AutoFilter 5, "T"
Bạn sửa lại thành:
.AutoFilter 4, Choose(i, "Gi" & ChrW(7887) & "i", "K"): .AutoFilter 5, "T"
ChrW(7887) tương đương với chử ỏ
Nếu thấy rắc rối quá thì mấy điều kiện lọc tiếng Việt này ta gõ trực tiếp lên cell luôn cho xong!
Ví dụ:
- Gõ chử Giỏi vào cell M1, chử K vào cell M2
- Sửa lại code thành:
.AutoFilter 4, Choose(i, [M1], [M2]): .AutoFilter 5, "T"
.AutoFilter 4, Choose(i, "Gi*", "K"): .AutoFilter 5, "T"
.AutoFilter 6, Choose(i, "HS Gi*", "HSTT")
tôi có việc muốn nhờ các pro giúp đỡ cho nhé!
tôi đã post ví dụ kèm theo rồi mong các pro trả lời càng sớm càng tốt!
thanks a lot![]()
Option Explicit
Sub AutoShape1_Click()
Dim Jj As Integer, Aa, Bb, Cc, Xx, yY, Zz, eRw As Long, Nn
eRw = [b65500].End(xlUp).Row + 1
Jj = 1
Do
Do While Jj < eRw ' 5000'
For nN = 1 To eRw '5000'
Aa = Cells(Jj, 4)
Bb = Cells(Jj, 5)
Cc = Cells(Jj, 6)
Xx = Cells(nN, 12)
yY = Cells(nN, 13)
Zz = Cells(nN, 14)
If ((Aa - Xx) ^ 2 + (Bb - yY) ^ 2 + (Cc - Zz) ^ 2) = 4 Then
Cells(Jj, 16) = Cells(Jj, 2)
Cells(Jj, 17) = Cells(nN, 10)
End If
Next nN
Jj = Jj + 1
Loop
Loop While Aa = ""
End Sub
Code này của Ndu tôi edit 1 chút.Xin các bác chỉ dáo em có một file excel muốn thay những số 10 000.00 bằng 10000, 20 000.00 bằng 20000 và những số tiếp theo, giờ em muốn viết một đoạn macro để tự động thay thế bác nào biết chỉ giúp em với
Function TachSo(Cell As Range) As Double
Set Temp = CreateObject("VBScript.RegExp")
Temp.Global = True
Temp.Pattern = "[^0-9]"
TachSo = Temp.Replace(Cell, "")
TachSo = TachSo / 100
End Function
Thay vì "hỏi", bạn cứ "thí nghiệm" trước điMấy anh chị ơi, em muốn filter - contains dựa trên 1 biến mình nhập vào thì làm thế nào ạh, em thấy nó chỉ cho filter một chuỗi có sẵn.
ví dụ : em muốn thay "2009-11-04" bằng 1 biến được ko ạh?
Sheets("temp").Activate
Range("A1:O1").AutoFilter field:=4, Criteria1:="*2009-11-04*" & "*", Operator:=xlAnd
em thử nhiều rồi nhưng không biết cách nào ạh, vì em muốn filter các event diễn ra theo biến thời gian, ví dụ từ hôm qua đến hôm nay. khi dùng cú pháp filter - contains - "*&biến*" thì nó hiểu là chuỗi &biến chứ không có lấy giá trị của biến, mong anh chỉ giáo ạhThay vì "hỏi", bạn cứ "thí nghiệm" trước đi
Quá trình thí nghiệm bị trục trặc thế nào hãy hỏi tiếp
Nói chung, câu trả lời của tôi là ĐƯỢC
Bạn đã thử thế nào?em thử nhiều rồi nhưng không biết cách nào ạh, vì em muốn filter các event diễn ra theo biến thời gian, ví dụ từ hôm qua đến hôm nay. khi dùng cú pháp filter - contains - "*&biến*" thì nó hiểu là chuỗi &biến chứ không có lấy giá trị của biến, mong anh chỉ giáo ạh
Ôi trời... Cột D của bạn là dạng Text thì làm sao mà Filter từ khoảng này đến khoảng kia được hả bạn!Nó không có báo lỗi nhưng em không biết filter từ data là 1 biến mình nhập vào nên làm sai kết quả. Mục đích là em filter các events diễn ra trong 1 khoảng thời gian phù hợp. Em mới làm marco nên còn gà ạhMong anh chỉ giáo.
Ôi trời... Cột D của bạn là dạng Text thì làm sao mà Filter từ khoảng này đến khoảng kia được hả bạn!
Ít ra cột D và E phải đúng chuẩn DATE thì mới tính tiếp được
Thêm nữa: Date mà bạn dùng InputBox để nhập là.. thua rồi (quá dở)
----------------
Tôi sửa lại dử liệu của bạn cho đúng chuẩn và Filter đây, bạn xem file đính kèm
Bạn thử chuyển bằng cách lấy cell đó *1 xem sao.Thanks anh, nhưng dữ liệu em lấy về là dạng TEXT, chuyển sang dạng DATE thì làm thế nào? Cái inputbox thì em test chơi thôi hehe, gà mới ra chơi mà đại ca....trong code anh viết chuyển DATE sang số thực để so sánh ,"[] " trong CDbl([xx]) có ý nghĩa gì vậy ... Em gà mong anh thông cảm, mới học thì hay hỏi này hỏi kia biết 1 tý mới có cảm hứng chứ tự làm hoài 1 cái gì đó ko ra thì cũng nản... hehe
Có thể sẽ không được... vì tôi để ý thấy mấy dử liệu test này có chứa ký tự CHAR(160) ở phía sau đấy ---> Dùng Find and Replace giải quyết nó là tiện nhấtBạn thử chuyển bằng cách lấy cell đó *1 xem sao.
.
Bạn gửi file Excel 2003 xem thử dữ liệu thế nào nhé, file của bạn gửi tôi không mở được.Nhưng thời gian nó thay đổi, mình phải find and replace từng cells hay sao anh ? em replace rồi chọn format của cái được replace nhưng nó không chuyển sang format mình cần ?!? , mấy anh hướng dẫn cụ thể được ko?
Nó đây... Bạn làm 1 bài hướng dẩn đi nhéBạn gửi file Excel 2003 xem thử dữ liệu thế nào nhé, file của bạn gửi tôi không mở được.
Thầy ơi em không dùng replace mà em dùng hàm để chuyển đổi vậy.Nó đây... Bạn làm 1 bài hướng dẩn đi nhé
Thế còn ngày tháng bỏ luôn à?Thầy ơi em không dùng replace mà em dùng hàm để chuyển đổi vậy.
Vậy thì em thêm hàm DATEVALUE vào luôn là đượcThế còn ngày tháng bỏ luôn à?
Tôi cứ tưởng mục đích của ta là: chuyển DATE từ dạng TEXT sang DATE CHUẨN chứ
Theo cách hiểu của tôi thì ý tác giả không phải vậy:Vậy thì em thêm hàm DATEVALUE vào luôn là được
Vầy đi cho tiện!Các anh chị ơi em có 1 file muốn tự động lọc (copy) dữ liệu từ 1 sheet Tổng hợp sang 3 sheet con, điều kiện lọc nằm ở 1 sheet riêng biệt. Do em ko rành VBA nên nhờ các anh chị viết dùm em đoạn mã để thực hiện việc này nha.
Em cảm ơn các anh chị nhiều lắm
Bài của Bạn cũng có thể dùng công thức để lọc cũng được, nếu Bạn đồng ý Mình sẽ giúp. Hơn nữa trong mã hàng hóa PN của Bạn đâu có mã C. Tôi thấy trong sheet THSL Bạn ghi mã C là B nhưng sao lại trong yêu cầu lại khác nhỉ?Các anh chị ơi em có 1 file muốn tự động lọc (copy) dữ liệu từ 1 sheet Tổng hợp sang 3 sheet con, điều kiện lọc nằm ở 1 sheet riêng biệt. Do em ko rành VBA nên nhờ các anh chị viết dùm em đoạn mã để thực hiện việc này nha.
Em cảm ơn các anh chị nhiều lắm
Ôi... do tôi copy code cũ và chưa kiểm tra hếtAnh ndu ơi! Anh xem lại code nhé, hình như chưa đúng ý của tác giả đó. tác giả muốn lọc theo điều kiện PN nữa (Anh xem lại yêu cầu của tác giả trong sheet THSL)
Option Explicit
Sub AdvancedFilter()
'Loi Nhan Tu GPE: Fím Tát: {CTRL}+{SHIFT}+A'
Dim Sh As Worksheet, Clls As Range
Dim eR As Long, StrC As String
Sheets("All").Select
eR = [G65500].End(xlUp).Row
For Each Clls In Range("AE2:AE4")
[AC2].FormulaR1C1 = "=R[" & Clls.Row - 2 & "]C[2]&""*"""
Range("A1:P" & eR).AdvancedFilter Action:=2, _
CriteriaRange:=[AC1].Resize(2), CopyToRange:=[O1].Resize(, 13)
StrC = Choose(Clls.Row - 1, "M", "C", "S")
Set Sh = Worksheets(StrC)
[O1].CurrentRegion.Offset(1).Copy Destination:=Sh.[A2]
Range("O2:AA" & eR).Clear
Next Clls
End Sub
Sub Copy1Record()
'Loi Nhan Tu GPE: Fím Tát: {CTRL}+{SHIFT}+C'
Dim Sh As Worksheet, Rng As Range, StrC As String
Sheets("All").Select
Set Rng = [G65500].End(xlUp): StrC = Left(Rng.Value, 1)
If StrC = "B" Then StrC = "C": Rng.Interior.ColorIndex = 35 + (Rng.Row Mod 6)
Sheets(StrC).[A65500].End(xlUp).Offset(1).Resize(, 13).Value = _
Cells(Rng.Row, "A").Resize(, 13).Value
End Sub
Ôi... do tôi copy code cũ và chưa kiểm tra hết
Dòng:
AutoFilter 23, Item & "*"
Sửa thành:
AutoFilter 7, Item & "*"
là xong
Gửi anh ndu(*) Để chép toàn bộ dữ liệu đang có tại 'All'
PHP:Option Explicit Sub AdvancedFilter() 'Loi Nhan Tu GPE: Fím Tát: {CTRL}+{SHIFT}+A' Dim Sh As Worksheet, Clls As Range Dim eR As Long, StrC As String Sheets("All").Select eR = [G65500].End(xlUp).Row For Each Clls In Range("AE2:AE4") [AC2].FormulaR1C1 = "=R[" & Clls.Row - 2 & "]C[2]&""*""" Range("A1:P" & eR).AdvancedFilter Action:=2, _ CriteriaRange:=[AC1].Resize(2), CopyToRange:=[O1].Resize(, 13) StrC = Choose(Clls.Row - 1, "M", "C", "S") Set Sh = Worksheets(StrC) [O1].CurrentRegion.Offset(1).Copy Destination:=Sh.[A2] Range("O2:AA" & eR).Clear Next Clls End Sub
(*) Nhập xong dòng dữ liệu bấm tổ hợp fím tắt để chép 1 record
PHP:Sub Copy1Record() 'Loi Nhan Tu GPE: Fím Tát: {CTRL}+{SHIFT}+C' Dim Sh As Worksheet, Rng As Range, StrC As String Sheets("All").Select Set Rng = [G65500].End(xlUp): StrC = Left(Rng.Value, 1) If StrC = "B" Then StrC = "C": Rng.Interior.ColorIndex = 35 + (Rng.Row Mod 6) Sheets(StrC).[A65500].End(xlUp).Offset(1).Resize(, 13).Value = _ Cells(Rng.Row, "A").Resize(, 13).Value End Sub
Làm sao mình muốn lọc dữ liệu khi thay đổi điểu kiện lọc thì thì dữ liệu lọc cũng được thay đổi theo, và dữ liệu được copy sang sheet khác? em dùng advance fillter nhưng mỗi lần thay đổi điều kiện thì lại phải chọn lại vùng lọc mất thời gian quá.