Giúp em sắp xếp dữ liệu trong bảng tính này với

Liên hệ QC

newbiesg

Thành viên mới
Tham gia
3/6/10
Bài viết
8
Được thích
0
View attachment 46887Anh chị giúp em công thức sắp xếp theo thứ tự với. Như yêu cầu, Em có 1 file Excel với 2 Sheet. Sheet1 thì có 3 cột là STT, tên và cmnd; còn Sheet2 thì có tên, cmnd và mã số nhưng lại tên lại không theo thứ tự như Sheet1. Bây giờ em muốn lấy Tên ở Sheet1 làm chuẩn không thay đổi và sắp xếp lại tên, cmnd của Sheet2 theo thứ tự chuẩn của Sheet1 thêm vào đó Sheet1 sẽ được thêm 1 cột là "mã số" của Sheet2. Riêng Sheet2 thì dữ liệu có thể nhiều hơn hoặc bẳng Sheet1, những dữ liệu nào mà Sheet1 không có so với Sheet2 thì sẽ được này ở dưới. Mục đích của em là vậy. Mong các anh chị giúp em, Xin cám ơn

Thứ 7, 19/06/2010

Anh domfootwear và dat_butmuc có thể giúp em 1 lần nữa không? Công thức vừa rồi rất hữu dụng với em nhưng bây giờ có thể rắc rối là giả sử ở Sheet2 sẽ không có vài Tên so với ở Sheet 1 và các Tên ở Sheet 2 vẫn này đảo vị trí so với Sheet1, bây giờ em muốn lấy Sheet1 làm chuẩn rồi lọc những Tên này ở Sheet2 theo thứ tự của Sheet1 và những Tên nào ở Sheet2 bi thiếu so với Sheet1 thì sẽ tự động được thêm vào Sheet2 theo đúng thứ tự ở Sheet1 luôn được không các anh.

Vì đây là bản lương tổng hợp cho cả năm nên em cần giữ lại tên, cmnd va mã số của tất cả nhân viên dù đã nghĩ hay vẫn còn đang làm (ví dụ như T1 có các nhân viên A,B,C,D,E thì qua T2 có B và D nghĩ làm và có thêm người mới là F và G vào làm thì em muốn xếp bản lương theo thứ tự của T1 nhưng vẫn giữ vị trí thứ tự của B và D trong bản lương). Em có attach file mẫu vào bài, em mong sự giúp đỡ của các anh.

Xin cám ơn các anh nhiều lắm. chúc mọi người buổi tối vui vẻ
 

File đính kèm

  • giupemvoi_19062010.xls
    18 KB · Đọc: 35
Lần chỉnh sửa cuối:
Anh chị giúp em công thức sắp xếp theo thứ tự với. Như yêu cầu, Em có 1 file Excel với 2 Sheet. Sheet1 thì có 3 cột là STT, tên và cmnd; còn Sheet2 thì có tên, cmnd và mã số nhưng lại tên lại không theo thứ tự như Sheet1. Bây giờ em muốn lấy Tên ở Sheet1 làm chuẩn không thay đổi và sắp xếp lại tên, cmnd của Sheet2 theo thứ tự chuẩn của Sheet1 thêm vào đó Sheet1 sẽ được thêm 1 cột là "mã số" của Sheet2. Riêng Sheet2 thì dữ liệu có thể nhiều hơn hoặc bẳng Sheet1, những dữ liệu nào mà Sheet1 không có so với Sheet2 thì sẽ được này ở dưới. Mục đích của em là vậy. Mong các anh chị giúp em, Xin cám ơn

Ở Sheet2 chèn thêm 1 cột STT ở cột A.

A2=INDEX(Sheet1!$A$2:$B$65536,MATCH(B2,Sheet1!$B$2:$B$65536,0),1)--> Kéo xuống

Vào Data Sort lại cột số TT

Ở Sheet1 thêm cột Mã Số ở cột D

D2=VLOOKUP(A2,Sheet2!$A$2:$D$9,4,0)--> Kéo Xuống
 

File đính kèm

  • LookupNguocXuoi.xls
    24 KB · Đọc: 47
úp lên cho mọi người người thấy
 
Bạn hãy xem VBA làm điều đó như thế nào

PHP:
Option Explicit
Sub XepDS()
 Dim Sh As Worksheet, Rng As Range, sRng As Range, Clls As Range, Cls3 As Range
 
 Set Sh = Sheet2:          Sheet1.Select
 Sh.Columns("A:C").Insert Shift:=xlToRight
 Sh.[A1].Resize(, 3).Value = Sh.[d1].Resize(, 3).Value
 Set Rng = Sh.Range(Sh.[E1], Sh.[E65500].End(xlUp))
 For Each Clls In Range([C2], [c65500].End(xlUp))
   Set sRng = Rng.Find(Clls.Value, , xlFormulas, xlWhole)
   If Not sRng Is Nothing Then
      Clls.Offset(, 1).Value = sRng.Offset(, 1).Value
      With Sh.[A65500].End(xlUp).Offset(1)
         Set Cls3 = sRng.Offset(, -1).Resize(, 3)
         .Resize(, 3).Value = Cls3.Value
         Cls3.Value = ""
      End With
   End If
 Next Clls
 For Each Clls In Rng.Offset(1, -1).SpecialCells(xlCellTypeConstants, 2)
   With Sh.[A65500].End(xlUp).Offset(1)
      .Resize(, 3).Value = Clls.Resize(, 3).Value
   End With
 Next Clls
GPE:                          Sh.Columns("d:f").Delete Shift:=xlToLeft
End Sub



Chú ý nho nhỏ:
Mọi CNLĐ đều fải có chứng minh nhân dân theo luật định.
 
Lần chỉnh sửa cuối:
PHP:
Option Explicit
Sub XepDS()
 Dim Sh As Worksheet, Rng As Range, sRng As Range, Clls As Range, Cls3 As Range
 
 Set Sh = Sheet2:          Sheet1.Select
 Sh.Columns("A:C").Insert Shift:=xlToRight
 Sh.[A1].Resize(, 3).Value = Sh.[d1].Resize(, 3).Value
 Set Rng = Sh.Range(Sh.[E1], Sh.[E65500].End(xlUp))
 For Each Clls In Range([C2], [c65500].End(xlUp))
   Set sRng = Rng.Find(Clls.Value, , xlFormulas, xlWhole)
   If Not sRng Is Nothing Then
      Clls.Offset(, 1).Value = sRng.Offset(, 1).Value
      With Sh.[A65500].End(xlUp).Offset(1)
         Set Cls3 = sRng.Offset(, -1).Resize(, 3)
         .Resize(, 3).Value = Cls3.Value
         Cls3.Value = ""
      End With
   End If
 Next Clls
 For Each Clls In Rng.Offset(1, -1).SpecialCells(xlCellTypeConstants, 2)
   With Sh.[A65500].End(xlUp).Offset(1)
      .Resize(, 3).Value = Clls.Resize(, 3).Value
   End With
 Next Clls
GPE:                          Sh.Columns("d:f").Delete Shift:=xlToLeft
End Sub



Chú ý nho nhỏ:
Mọi CNLĐ đều fải có chứng minh nhân dân theo luật định.

Cám ơn anh, để em làm thử xem như thế nào. mà mình không sử dụng hàm của Excel được hả anh, vì trong cty em có mấy cô kế toán lớn tuổi nên việc sử dụng VBA thì hơi khó khăn tí, riêng em thì không sao /-*+/ Nhưng cũng cám ơn anh nhiều lắm
 
Mình nghĩ viết ra nó mới nhọc công, chứ . . .

. . . để em làm thử xem như thế nào.. . , vì trong cty em có mấy cô kế toán lớn tuổi nên việc sử dụng VBA thì hơi khó khăn tí, riêng em thì không sao /-*+/

Xài nó như trở bài tay ý mà: Bạn làm 1 nút lệnh xong bảo ai đó muốc xếp dữ liệu thì bấm vô; Chuyện bấm vô 1 nút lệnh còn dễ hơn viết 1 công thức êxcel ấy chứ lị.

Tất nhi6n chuyện bảo trì hay bổ sung sửa đổi thì, Khi nào còn GPE.COM thì iên trí lớn, fải không?!

SPAm 1 tẹo; Các MOD?SMODs xóa dùm & xin cảm ơn.
 
Xài nó như trở bài tay ý mà: Bạn làm 1 nút lệnh xong bảo ai đó muốc xếp dữ liệu thì bấm vô; Chuyện bấm vô 1 nút lệnh còn dễ hơn viết 1 công thức êxcel ấy chứ lị.

Tất nhi6n chuyện bảo trì hay bổ sung sửa đổi thì, Khi nào còn GPE.COM thì iên trí lớn, fải không?!

SPAm 1 tẹo; Các MOD?SMODs xóa dùm & xin cảm ơn.

Em đã làm theo đoạn mã VBA ma anh đưa em rồi, hoạt động tốt nhưng em vẫn còn một vướng mắc là không sau khi sắp xếp thì những dữ liệu mà Sheet2 bị thiếu so với Sheet1 vẫn không được copy qua. ( ở đây là Sheet2 bi thiếu B và D so với Sheet1). Vậy giờ em mong muốn là lấy Sheet1 làm chuẩn, rồi so Sheet2 với Sheet1, những dữ liệu nào ma Sheet2 bị thiếu sẽ được copy qua và giữ nguyên vi trí thứ tự giống Sheet1. Xin cám ơn anh nhiều
 
Chép nhầm còn hơn bỏ sót!

Thực sự chưa hoàn toàn hiểu í bạn; Mình viết macro chép tất tần tật đây:

PHP:
Option Explicit
Sub CopyAndCopy()
 Dim Rng As Range, Sh As Worksheet, Clls As Range, sRng As Range
 Dim Col As Byte
 
 Set Sh = Sheet1:                      Set Rng = Sh.[B1].CurrentRegion
 Col = Rng.Columns.Count:              Sheet2.Select
 Sh.[d1].Value = [C1].Value
 [a1].Resize(, 1 + Col).EntireColumn.Insert Shift:=xlToRight
 Rng.Copy Destination:=[a1]
 [a1].Offset(, Col).Resize(, Col).Interior.ColorIndex = 38
 
 Set Rng = Range([C1], [c65500].End(xlUp))
 For Each Clls In Range(Cells(1, 3 + Col), Cells(65500, 3 + Col).End(xlUp))
   MsgBox Clls.Address
   If Clls.Value <> "" Then
      Set sRng = Rng.Find(Clls.Value, , xlFormulas, xlWhole)
      If sRng Is Nothing Then
         With [B65500].End(xlUp).Offset(1)
1            .Resize(, 3).Value = Clls.Offset(, -1).Resize(, 3).Value
         End With
         With Sh.[B65500].End(xlUp).Offset(1)
2            .Resize(, 3).Value = Clls.Offset(, -1).Resize(, 3).Value
         End With
      Else
3         Sh.Range(sRng.Address).Offset(, 1).Value = Clls.Offset(, 1).Value
         sRng.Offset(, 1).Value = Clls.Offset(, 1).Value
      End If
   End If
 Next Clls
 Cells(1, Col + 1).Resize(, Col).EntireColumn.Delete Shift:=xlToLeft
End Sub

Chú í:

Với những record chưa có ở S1, thì:

Dòng lệnh 1 chép dòng dữ liệu từ S2 đến S2;
Dòng lệnh 2 chép từ S2 sang S1

Dòng lệnh 3: Dùng để chép mã số sang S1; Dòng dưới liền kề: Chép mã số sang vùng mới.
 

File đính kèm

  • GPE.rar
    13.2 KB · Đọc: 24
Thực sự chưa hoàn toàn hiểu í bạn; Mình viết macro chép tất tần tật đây:

PHP:
Option Explicit
Sub CopyAndCopy()
 Dim Rng As Range, Sh As Worksheet, Clls As Range, sRng As Range
 Dim Col As Byte
 
 Set Sh = Sheet1:                      Set Rng = Sh.[B1].CurrentRegion
 Col = Rng.Columns.Count:              Sheet2.Select
 Sh.[d1].Value = [C1].Value
 [a1].Resize(, 1 + Col).EntireColumn.Insert Shift:=xlToRight
 Rng.Copy Destination:=[a1]
 [a1].Offset(, Col).Resize(, Col).Interior.ColorIndex = 38
 
 Set Rng = Range([C1], [c65500].End(xlUp))
 For Each Clls In Range(Cells(1, 3 + Col), Cells(65500, 3 + Col).End(xlUp))
   MsgBox Clls.Address
   If Clls.Value <> "" Then
      Set sRng = Rng.Find(Clls.Value, , xlFormulas, xlWhole)
      If sRng Is Nothing Then
         With [B65500].End(xlUp).Offset(1)
1            .Resize(, 3).Value = Clls.Offset(, -1).Resize(, 3).Value
         End With
         With Sh.[B65500].End(xlUp).Offset(1)
2            .Resize(, 3).Value = Clls.Offset(, -1).Resize(, 3).Value
         End With
      Else
3         Sh.Range(sRng.Address).Offset(, 1).Value = Clls.Offset(, 1).Value
         sRng.Offset(, 1).Value = Clls.Offset(, 1).Value
      End If
   End If
 Next Clls
 Cells(1, Col + 1).Resize(, Col).EntireColumn.Delete Shift:=xlToLeft
End Sub
Chú í:

Với những record chưa có ở S1, thì:

Dòng lệnh 1 chép dòng dữ liệu từ S2 đến S2;
Dòng lệnh 2 chép từ S2 sang S1

Dòng lệnh 3: Dùng để chép mã số sang S1; Dòng dưới liền kề: Chép mã số sang vùng mới.


Xin lỗi anh vì kỹ năng diễn đạt của em kém quá, tự em cũng cảm thấy lung tung cả lên -+*/. Để lần này em cố gắn lại nhưng dài dòng một tí cho dễ hiểu, mong anh thông cảm -\\/..

Công ty của em của em đang làm là chế biến gỗ nên nhân công lên đến hơn 300 người. Nên người ta làm và nghĩ liên tục trong năm, nhưng khi làm bản lương tổng hợp cuối năm em muốn giữ luôn tên cả những người đã nghĩ. Nên giờ em ví dụ ngắn gọn để mình dễ hiểu.

Ví dụ: tháng 1, có 5 người làm (tên A,B,C,D,E), qua tháng 2 thì có 2 người nghĩ (B, D)và thêm 2 người mới vào (F,G) và tiếp tục các tháng còn lại cũng vậy.... giờ em muốn trước hết là xếp dữ liệu của tháng 2 sao cho giống với tháng 1, mặc dù tháng 2 có B và D nghĩ nhưng em vẫn muốn có tên của họ trong danh sách của tháng 2 và những người mới vào của tháng 2 thì nằm ở phí dưới.

Ở đây em attach file với tên đầy đủ cho anh dễ hình dung luôn ha

Cám ơn anh nhiều lắm
 

File đính kèm

  • giupemlannua.xls
    25.5 KB · Đọc: 12
Giờ thì không chìu ý bạn nữa. Mà bạn cần theo hướng sau (Xem trong file kèm)

Mình đề xuất với bạn cách làm khác như sau:

Tạo 1 fần gần chục cột của 1 trang tính làm CSDL. CSDL này lưu danh sách toàn thể CNLĐ đã làm việc tại xưởng trong năm. (Vì có fần tổng hợp lương toàn năm của xưởng)

Người nào nghỉ việc cần nhập ngày nghỉ vô cột [NgayNghi]; Người nào mới nhận việc tại xưởng hay được điều động về ngày nào thì nhập vô cột [NgayNV]

Để trích ra danh sách nhân viên sang bảng lương tháng cụ thể nào đó ta chọn tháng tại [I1]; Chỉ sau đó ta chọn tiếp năm (tại [H2]). Sau tích tắc ta sang trang [BgLg] sẽ thấy danh sách theo yêu cầu.
Tất nhiên ta có thể copy trang tính này để in ấn hay lưu trữ vài năm.

Danh sách CNLĐ của bạn biến động nhiều, thì hết năm ta dời số đã nghỉ năm trước sang vùng khác của trang CSDL để lưu giữ. (Việc này mình hoàn toàn biếu bạn 1 macro để công việc được thực hiện lẹ làng & chính xác.)

Với đề xuất như vậy, hãy cho biết ý kiến của bạn:
(*) Cần thay đổi gì,
(*) Cần bổ sung hay giảm bớt fần nào trong chu trình tạo danh sách cho bảng lương.

Chờ ý bạn & thân ái!
 

File đính kèm

  • GPE.rar
    18.2 KB · Đọc: 28
Mình đề xuất với bạn cách làm khác như sau:

Tạo 1 fần gần chục cột của 1 trang tính làm CSDL. CSDL này lưu danh sách toàn thể CNLĐ đã làm việc tại xưởng trong năm. (Vì có fần tổng hợp lương toàn năm của xưởng)

Người nào nghỉ việc cần nhập ngày nghỉ vô cột [NgayNghi]; Người nào mới nhận việc tại xưởng hay được điều động về ngày nào thì nhập vô cột [NgayNV]

Để trích ra danh sách nhân viên sang bảng lương tháng cụ thể nào đó ta chọn tháng tại [I1]; Chỉ sau đó ta chọn tiếp năm (tại [H2]). Sau tích tắc ta sang trang [BgLg] sẽ thấy danh sách theo yêu cầu.
Tất nhiên ta có thể copy trang tính này để in ấn hay lưu trữ vài năm.

Danh sách CNLĐ của bạn biến động nhiều, thì hết năm ta dời số đã nghỉ năm trước sang vùng khác của trang CSDL để lưu giữ. (Việc này mình hoàn toàn biếu bạn 1 macro để công việc được thực hiện lẹ làng & chính xác.)

Với đề xuất như vậy, hãy cho biết ý kiến của bạn:
(*) Cần thay đổi gì,
(*) Cần bổ sung hay giảm bớt fần nào trong chu trình tạo danh sách cho bảng lương.

Chờ ý bạn & thân ái!


Cám ơn anh nhiều lắm, vì em cũng chỉ mới vào cty nên không dám này nọ nhiều sợ bị soi //////, nên người lớn bảo gì làm đó chứ không dám ý kiến nhiều. Vì cty trước giờ toàn nhập liệu bằng tay nên dữ liệu giờ lung tung lắm và giờ sử dụng hàm và VBA trong mấy cái này khá rắc rối cho các cô kế toán lớn tuổi.

Cách của anh đề xuất em rất thích và cũng mong muốn làm như vậy để tiện cho mình về sau rất nhiều nhưng phải đợi đến Thứ 2 tuần sau họp em mới co thể đưa ra ý kiến và nếu được thì chắc em sẽ ôm hết cái vụ đó và làm lại tất cả CSDL(nhập tên, tuổi, cmnd,mst, ngayNV, ngày nghĩ việc và một đống những thức khác) cho công về sau.

Nhưng giờ, trước mắt thì em chỉ mong muốn nhờ anh hướng dẫn giúp em cách mà em đã trình bày với anh ở trên,vượt quá sức và kiến thức của em rồi **~** , tức là sắp xếp rồi so sánh Sheet2 với Sheet1, nếu tên nào thiếu thì copy qua thôi (nếu có phải nhập liệu bằng tay chút đỉnh cũng được). Bởi vì khi đưa Bản lương năm 2009 cho em làm thì tất cả các tháng từ 1-12 chỉ có STT, tên, cmnd, mst và lương thôi, nhưng khỗ nỗi trong các tháng dữ liệu lại bi đảo tùm lum hết nên giờ em mới muốn sắp xếp và so sanh dữ liệu lại. Còn cái Bản lương tổng họp cuối năm em để vào trong file mẫu là muốn ví dụ cho anh biết ý đồ công việc của em được yêu cầu làm vậy, nên mình không cần quan tâm cho cái vụ đó.
Bởi vì nếu so được Sheet1 và Sheet2 theo như yêu cầu là xong việc của em rồi --=0(những Sheet còn lại cũng tương tự, em sẽ dựa vào code của anh để chỉnh sữa thêm cho phù hợp với nhu cầu), phần bản lương tổng họp cuối năm là của người khác làm mà theo em biết họ sẽ chỉ copy dữ liệu của từng Sheet rồi Past Special/Value thôi

Xin cám ơn anh, chúc sức khỏe
 
Chuyện này không muốn tẹo nào, vậy đó!

PHP:
 Dim Col As Long
 
 Set Sh = Sheets("T01"):               Set Rng = Sh.[b3].CurrentRegion
 Col = Rng.Columns.Count:              Sheets("T02").Select
 [A1].Resize(, Col).EntireColumn.Insert Shift:=xlToRight
1 ' Chép Tieu De:'
 Cells(1, Col + 1).Resize(3, 250 - Col).Copy Destination:=[A1]
2 ' Chép ~ NV Tu T01 Có O T02 Sang T02 (Theo CMND):'
 Set Rng = Range(Cells(3, Col + 3), Cells(65500, 3 + Col).End(xlUp))
 For Each Clls In Sh.Range(Sh.[C4], Sh.[C65500].End(xlUp))
   Set sRng = Rng.Find(Clls.Value, , xlFormulas, xlWhole)
   If Not sRng Is Nothing Then
      With [B65500].End(xlUp).Offset(1)
         .Resize(, 3).Value = sRng.Offset(, -1).Resize(, 3).Value
         sRng.Value = "GPE"
      End With
   End If
 Next Clls
3 ' Chép ~ Nguoi Moi Vo Xuong:'
 For Each Clls In Rng
   If Clls.Value <> "GPE" Or Clls.Value <> "" Then
      With [B65500].End(xlUp).Offset(1)
         .Resize(, 3).Value = Clls.Offset(, -1).Resize(, 3).Value
      End With
   End If
 Next Clls
4 ' Xóa Các Cot Cu:'
 Cells(1, Col + 1).Resize(, Col).EntireColumn.Delete Shift:=xlToLeft
5 ' Dien STT(Khuyen Mai):'
 Col = 9 + [b3].CurrentRegion.Rows.Count
 Range("A4").FormulaR1C1 = "=IF(RC[1]="""","""",N(R[-1]C)+1)"
 [A4].AutoFill Destination:=Range("A4:A" & Col), Type:=xlFillDefault
 
End Sub


(Macro có tổ hợp fím nóng! & đây là lần cuối cùng làm theo kiểu này đó nha - Không giống ai, khà, khà,. . . .!)
 

File đính kèm

  • GPE.rar
    13.1 KB · Đọc: 25
PHP:
 Dim Col As Long
 
 Set Sh = Sheets("T01"):               Set Rng = Sh.[b3].CurrentRegion
 Col = Rng.Columns.Count:              Sheets("T02").Select
 [A1].Resize(, Col).EntireColumn.Insert Shift:=xlToRight
1 ' Chép Tieu De:'
 Cells(1, Col + 1).Resize(3, 250 - Col).Copy Destination:=[A1]
2 ' Chép ~ NV Tu T01 Có O T02 Sang T02 (Theo CMND):'
 Set Rng = Range(Cells(3, Col + 3), Cells(65500, 3 + Col).End(xlUp))
 For Each Clls In Sh.Range(Sh.[C4], Sh.[C65500].End(xlUp))
   Set sRng = Rng.Find(Clls.Value, , xlFormulas, xlWhole)
   If Not sRng Is Nothing Then
      With [B65500].End(xlUp).Offset(1)
         .Resize(, 3).Value = sRng.Offset(, -1).Resize(, 3).Value
         sRng.Value = "GPE"
      End With
   End If
 Next Clls
3 ' Chép ~ Nguoi Moi Vo Xuong:'
 For Each Clls In Rng
   If Clls.Value <> "GPE" Or Clls.Value <> "" Then
      With [B65500].End(xlUp).Offset(1)
         .Resize(, 3).Value = Clls.Offset(, -1).Resize(, 3).Value
      End With
   End If
 Next Clls
4 ' Xóa Các Cot Cu:'
 Cells(1, Col + 1).Resize(, Col).EntireColumn.Delete Shift:=xlToLeft
5 ' Dien STT(Khuyen Mai):'
 Col = 9 + [b3].CurrentRegion.Rows.Count
 Range("A4").FormulaR1C1 = "=IF(RC[1]="""","""",N(R[-1]C)+1)"
 [A4].AutoFill Destination:=Range("A4:A" & Col), Type:=xlFillDefault
 
End Sub
(Macro có tổ hợp fím nóng! & đây là lần cuối cùng làm theo kiểu này đó nha - Không giống ai, khà, khà,. . . .!)


Cám ơn anh nhiều lắm, em đã làm được phần công việc của mình theo yêu cầu rồi --=0. Chúc diễn đàn ngày càng pháp triển
 
View attachment 46887Anh chị giúp em công thức sắp xếp theo thứ tự với. Như yêu cầu, Em có 1 file Excel với 2 Sheet. Sheet1 thì có 3 cột là STT, tên và cmnd; còn Sheet2 thì có tên, cmnd và mã số nhưng lại tên lại không theo thứ tự như Sheet1. Bây giờ em muốn lấy Tên ở Sheet1 làm chuẩn không thay đổi và sắp xếp lại tên, cmnd của Sheet2 theo thứ tự chuẩn của Sheet1 thêm vào đó Sheet1 sẽ được thêm 1 cột là "mã số" của Sheet2. Riêng Sheet2 thì dữ liệu có thể nhiều hơn hoặc bẳng Sheet1, những dữ liệu nào mà Sheet1 không có so với Sheet2 thì sẽ được này ở dưới. Mục đích của em là vậy. Mong các anh chị giúp em, Xin cám ơn

Thứ 7, 19/06/2010

Anh domfootwear và dat_butmuc có thể giúp em 1 lần nữa không? Công thức vừa rồi rất hữu dụng với em nhưng bây giờ có thể rắc rối là giả sử ở Sheet2 sẽ không có vài Tên so với ở Sheet 1 và các Tên ở Sheet 2 vẫn này đảo vị trí so với Sheet1, bây giờ em muốn lấy Sheet1 làm chuẩn rồi lọc những Tên này ở Sheet2 theo thứ tự của Sheet1 và những Tên nào ở Sheet2 bi thiếu so với Sheet1 thì sẽ tự động được thêm vào Sheet2 theo đúng thứ tự ở Sheet1 luôn được không các anh.

Vì đây là bản lương tổng hợp cho cả năm nên em cần giữ lại tên, cmnd va mã số của tất cả nhân viên dù đã nghĩ hay vẫn còn đang làm (ví dụ như T1 có các nhân viên A,B,C,D,E thì qua T2 có B và D nghĩ làm và có thêm người mới là F và G vào làm thì em muốn xếp bản lương theo thứ tự của T1 nhưng vẫn giữ vị trí thứ tự của B và D trong bản lương). Em có attach file mẫu vào bài, em mong sự giúp đỡ của các anh.

Xin cám ơn các anh nhiều lắm. chúc mọi người buổi tối vui vẻ

Bạn cho biết thêm sheet 1 hay 2 là sheet bạn sẽ nhập liệu mới?
 
Web KT
Back
Top Bottom