Copy dữ liệu từ 1 sheet sang các sheet khác theo điều kiện

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

topgun

Thành viên mới
Tham gia
5/11/09
Bài viết
35
Được thích
4
Chào các bác! Mình có file đính kèm, muốn copy dữ liệu từ sheet sang các sheet <
> và <
> với điều kiện là:
- 3 ký tự bên trái của cột C mà tại cột H (phân loại) đánh dấu "x" thì copy sang sheet <
>
- ngược lại thì nếu giá trị 3 ký tự bên trái của cột C mà phân loại (cột H) là "trống" thì copy sang sheet <
>
Cảm ơn các bác nhiều!
 

File đính kèm

Lần chỉnh sửa cuối:
Chào các bác! Mình có file đính kèm, muốn copy dữ liệu từ sheet <<Tram khong uu tien>> sang các sheet <<phu luc 1>> và <<phu luc 2>> với điều kiện là:
- 3 ký tự bên trái của cột C mà tại cột H (phân loại) đánh dấu "x" thì copy sang sheet <<phu luc 1>>
- ngược lại thì nếu giá trị 3 ký tự bên trái của cột C mà phân loại (cột H) là "trống" thì copy sang sheet <<phu luc 2>>
Cảm ơn các bác nhiều!
Thử cái này xem sao
Thân
 

File đính kèm

Chào các bác! Mình có file đính kèm, muốn copy dữ liệu từ sheet <<Tram khong uu tien>> sang các sheet <<phu luc 1>> và <<phu luc 2>> với điều kiện là:
- 3 ký tự bên trái của cột C mà tại cột H (phân loại) đánh dấu "x" thì copy sang sheet <<phu luc 1>>
- ngược lại thì nếu giá trị 3 ký tự bên trái của cột C mà phân loại (cột H) là "trống" thì copy sang sheet <<phu luc 2>>
Cảm ơn các bác nhiều!
Bài này thật đơn giản nếu dùng Advanced Filter! Chúng ta làm như sau:
- Tại sheet Khong uu tien, gõ vào cell J2 công thức =VLOOKUP(LEFT($C2,3),$F$1:$H$18,3,0)="x"
- Tại sheet Khong uu tien, gõ vào cell K2 công thức =VLOOKUP(LEFT($C2,3),$F$1:$H$18,3,0)=0
- Dùng Advanced Filter với vùng điều kiện J1:J2, lọc sang sheet phu luc 1 và với vùng điều kiện K1:K2 sẽ lọc sang sheet phu luc 2
- Làm bằng tay cũng được, còn không thì code như sau:
PHP:
Sub Main()
  Dim SrcRng As Range, Crit1 As Range, Crit2 As Range
  With Sheets("Khong uu tien")
    Set SrcRng = .Range(.[A1], .[A65536].End(xlUp)).Resize(, 4)
    Set Crit1 = .Range("J1:J2")
    Set Crit2 = .Range("K1:K2")
  End With
  Sheets("phu luc 1").Range("A:D").Clear
  Sheets("phu luc 2").Range("A:D").Clear
  SrcRng.AdvancedFilter 2, Crit1, Sheets("phu luc 1").Range("A1")
  SrcRng.AdvancedFilter 2, Crit2, Sheets("phu luc 2").Range("A1")
End Sub
 

File đính kèm

Cảm ơn các bác nhiều!
 
Lần chỉnh sửa cuối:
Bài này thật đơn giản nếu dùng Advanced Filter! Chúng ta làm như sau:
- Tại sheet Khong uu tien, gõ vào cell J2 công thức =VLOOKUP(LEFT($C2,3),$F$1:$H$18,3,0)="x"
- Tại sheet Khong uu tien, gõ vào cell K2 công thức =VLOOKUP(LEFT($C2,3),$F$1:$H$18,3,0)=0
- Dùng Advanced Filter với vùng điều kiện J1:J2, lọc sang sheet phu luc 1 và với vùng điều kiện K1:K2 sẽ lọc sang sheet phu luc 2
- Làm bằng tay cũng được, còn không thì code như sau:
PHP:
Sub Main()
  Dim SrcRng As Range, Crit1 As Range, Crit2 As Range
  With Sheets("Khong uu tien")
    Set SrcRng = .Range(.[A1], .[A65536].End(xlUp)).Resize(, 4)
    Set Crit1 = .Range("J1:J2")
    Set Crit2 = .Range("K1:K2")
  End With
  Sheets("phu luc 1").Range("A:D").Clear
  Sheets("phu luc 2").Range("A:D").Clear
  SrcRng.AdvancedFilter 2, Crit1, Sheets("phu luc 1").Range("A1")
  SrcRng.AdvancedFilter 2, Crit2, Sheets("phu luc 2").Range("A1")
End Sub

Bác làm ơn chỉ dẫn chi tiết giúp e cách làm bằng tay với ạ, e làm rùi nhưng sao vẫn không dc??
 
Lần chỉnh sửa cuối:
Bác làm ơn chỉ dẫn chi tiết giúp e cách làm bằng tay với ạ, e làm rùi nhưng sao vẫn không dc??
Với Advanced Filter, nếu lọc sang sheet khác thì cần lưu ý 1 việc quan trọng: Lọc kết quả sang sheet nào thì đầu tiên phải chuyển qua sheet đó mà làm
Cụ thể, nếu bạn lọc sang sheet phu luc 1 thì đầu tiên bạn phải chuyển sang sheet phu luc 1, xong hẳn vào menu Data\Filter và gọi Advanced Filter
Chỉ vậy thôi, còn những việc sau đó vẫn như bình thường
 
Với Advanced Filter, nếu lọc sang sheet khác thì cần lưu ý 1 việc quan trọng: Lọc kết quả sang sheet nào thì đầu tiên phải chuyển qua sheet đó mà làm
Cụ thể, nếu bạn lọc sang sheet phu luc 1 thì đầu tiên bạn phải chuyển sang sheet phu luc 1, xong hẳn vào menu Data\Filter và gọi Advanced Filter
Chỉ vậy thôi, còn những việc sau đó vẫn như bình thường



Cảm ơn bác, em làm được rùi.
 
Lần chỉnh sửa cuối:
Web KT

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

Back
Top Bottom