Chào mừng đến với Diễn đàn Dân Kế Toán - Kế toán tổng hợp thực tế.
Trang 2 của 6 Đầu tiênĐầu tiên 1234 ... CuốiCuối
Kết quả 11 đến 20 của 58
  1. #11
    Ngày tham gia
    Nov 2015
    Bài viết
    0
    Ðề: Các cách thêm dòng mới vô 1 CSDL đã sẵn (Bài VIIC)

    BÀI VIIC Add values after sort.
    (/ấn đề là tôi có trang dữ liệu như dưới đây:


    Mã nguồn PHP:
    [COLOR=#000000]
    A B 1 100 1 20 2 100 2 30 3 100 3 10[/COLOR
    Giờ tôi có macro để chuyển dữ liệu sau khi đã sắp xếp như trên thành như sau:



    Mã:
    A     B
    1    100
    1     20
         120 
    (empty row)
    2    100
    2    30
         130
    (empty row)
    3    100 
    3    10
         110
    Macro sau đây sẽ làm nhiệm vụ đề ra được toại nguyện:



    Mã nguồn PHP:
    [COLOR=#000000]
    Option Explicit Sub Insert2BlanlRowWithToTal[/COLOR][COLOR=#007700]() [/COLOR][COLOR=#0000BB]Dim Rws [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Long[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Long[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Zz [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Long Dim Total [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Double Columns[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"C:c"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Insert Shift[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlToRight Rws [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Cells[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Cells[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Rows[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Count[/COLOR][COLOR=#007700], [/COLOR][COLOR=#DD0000]"B"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]End[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]xlUp[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Row ReDim Arr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]1 To 2 [/COLOR][COLOR=#007700]* [/COLOR][COLOR=#0000BB]Rws[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1 To 2[/COLOR][COLOR=#007700]) For [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]1 To Rws Arr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]jJ[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#0000BB]Cells[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]jJ[/COLOR][COLOR=#007700], [/COLOR][COLOR=#DD0000]"B"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value Arr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]jJ[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]2[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#DD0000]"A" [/COLOR][COLOR=#007700]& [/COLOR][COLOR=#0000BB]jJ[/COLOR][COLOR=#007700]: [/COLOR][COLOR=#0000BB]Total [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Total [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]Cells[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]jJ[/COLOR][COLOR=#007700], [/COLOR][COLOR=#DD0000]"B"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]Cells[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700], [/COLOR][COLOR=#DD0000]"A"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]<> [/COLOR][COLOR=#0000BB]Cells[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]jJ[/COLOR][COLOR=#007700], [/COLOR][COLOR=#DD0000]"A"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value Then Zz [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Zz [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]2 Arr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Rws [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]Zz [/COLOR][COLOR=#007700]- [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#0000BB]Total[/COLOR][COLOR=#007700]: [/COLOR][COLOR=#0000BB]Total [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]0 Arr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Rws [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]Zz [/COLOR][COLOR=#007700]- [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]2[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#DD0000]"A" [/COLOR][COLOR=#007700]& [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]& [/COLOR][COLOR=#0000BB]jJ Arr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Rws [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]Zz[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]2[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#DD0000]"A" [/COLOR][COLOR=#007700]& [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]& [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]& [/COLOR][COLOR=#0000BB]jJ End [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]Next jJ [/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000BB]B1[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]Resize[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]2 [/COLOR][COLOR=#007700]* [/COLOR][COLOR=#0000BB]Rws[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]2[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Arr[/COLOR][COLOR=#007700]() [[/COLOR][COLOR=#0000BB]B1[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]CurrentRegion[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Sort Key1[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"C1"[/COLOR][COLOR=#007700]), [/COLOR][COLOR=#0000BB]Order1[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlAscending[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Header[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlGuess[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]_ OrderCustom[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]MatchCase[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]False Columns[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"C:C"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Delete Shift[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlToLeft End Sub [/COLOR
    :sorrynha:

  2. #12
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Các cách thêm dòng mới vô 1 CSDL đã sẵn (Bài VIID)

    :dotphao:​
    BÀI VIID Find word then insert 2 rows



    I've found similar results for code online but not exactly what I want and I don't know how to modify it to do what I want.

    Basically I want to search for the word "Total", once found insert 2 entire rows underneath that "Total". Then continue to search for all "Total" strings and continue adding 2 rows until no more are found.

    Can anybody help me out with this?

    (Note: The word "Total" actually comes after several categories ie. ABCA Total, ABCB Total)
    This macro has superior speed



    Mã nguồn PHP:
    [COLOR=#000000]
    Option Explicit Sub Add2RowsWithMethodeFIND[/COLOR][COLOR=#007700]() [/COLOR][COLOR=#0000BB]Dim lRow [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Long[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]MyAdd [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]String Dim Rng [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]sRng [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range lRow [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Cells[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Rows[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Count[/COLOR][COLOR=#007700], [/COLOR][COLOR=#DD0000]"A"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]End[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]xlUp[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Row Set Rng [/COLOR][COLOR=#007700]= [[/COLOR][COLOR=#0000BB]c1[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]Resize[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]2 [/COLOR][COLOR=#007700]* [/COLOR][COLOR=#0000BB]lRow[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Set sRng [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Find[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"Total"[/COLOR][COLOR=#007700], , [/COLOR][COLOR=#0000BB]xlFormulas[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]xlPart[/COLOR][COLOR=#007700]) If [/COLOR][COLOR=#0000BB]Not sRng Is Nothing Then MyAdd [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]sRng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Address [/COLOR][COLOR=#007700]Do [/COLOR][COLOR=#0000BB]sRng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Offset[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Resize[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]2[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]EntireRow[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Select Selection[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Insert Set sRng [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]FindNext[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]sRng[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Loop [/COLOR][COLOR=#007700]While [/COLOR][COLOR=#0000BB]Not sRng Is Nothing [/COLOR][COLOR=#007700]And [/COLOR][COLOR=#0000BB]sRng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Address [/COLOR][COLOR=#007700]<> [/COLOR][COLOR=#0000BB]MyAdd End [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]End Sub [/COLOR
    :mocmui:​

  3. #13
    Ngày tham gia
    Sep 2015
    Bài viết
    140
    Ðề: Cách thêm dòng mới vô CSDL & thêm công thức vô 1 số ô trong dòng vừa thêm

    BÀI VIII LẬP CÔNG THỨC TÍNH TẠI 1 SỐ Ô TRONG DÒNG VỪA THÊM
    Các bạn mường tượng nhiệm vụ đề ra như sau:

    (*) Chúng ta thu thập được các số liệu khoa học từ cuộc thí nghiệm dài hơi (Fần 'A" trong hình bên dưới đính kèm
    Cột [A] ghi cao độ đạt được & cột ghi lại thể tích ta thu được thông qua thí nghiệm tại độ cao nào đó.
    Nhiệm vụ của macro là:

    (1) Thêm 10 dòng cho mỗi một độ cao nhận được;

    (2) Lập các công thức cho tất cả các ô thuộc các dòng mới thêm nằm trên cột & [C] & công thức tính tại cột [D] (tức dòng cuối vừa thêm cho mỗi độ cao)
    (Xin xem fần B trong hình)



    /-)ể tiện theo dõi, mình xin tách ra 2 macro thực thi 2 nhiệm vụ trên lần lượt;

    Đây là macro thêm chục dòng cho mỗi record:



    Mã nguồn PHP:
    [COLOR=#000000]
    Option Explicit Sub ChenDong[/COLOR][COLOR=#007700]() [/COLOR][COLOR=#0000BB]Dim DuLieu[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]kq[/COLOR][COLOR=#007700]() [/COLOR][COLOR=#0000BB]Dim Dong[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Cot[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]I[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]J[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]K DuLieu [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700]([[/COLOR][COLOR=#0000BB]a4[/COLOR][COLOR=#007700]], [[/COLOR][COLOR=#0000BB]a65536[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]End[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]xlUp[/COLOR][COLOR=#007700])).[/COLOR][COLOR=#0000BB]Resize[/COLOR][COLOR=#007700](, [/COLOR][COLOR=#0000BB]2[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value ReDim kq[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]1 To UBound[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]DuLieu[/COLOR][COLOR=#007700]) * [/COLOR][COLOR=#0000BB]10[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1 To 2[/COLOR][COLOR=#007700]) For [/COLOR][COLOR=#0000BB]Dong [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]1 To UBound[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]DuLieu[/COLOR][COLOR=#007700]) * [/COLOR][COLOR=#0000BB]10 Step 10 J [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]J [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]1 [/COLOR][COLOR=#007700]For [/COLOR][COLOR=#0000BB]Cot [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]1 To 2 kq[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Dong[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Cot[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#0000BB]DuLieu[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]J[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Cot[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Next [/COLOR][COLOR=#007700]For [/COLOR][COLOR=#0000BB]I [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]1 To 9 kq[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Dong [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]I[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#0000BB]kq[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Dong[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) & [/COLOR][COLOR=#DD0000]"." [/COLOR][COLOR=#007700]& [/COLOR][COLOR=#0000BB]I Next Next [/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000BB]a4[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]Resize[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Dong [/COLOR][COLOR=#007700]- [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]2[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#0000BB]kq End Sub [/COLOR
    & dưới đây là macro thêm các công thức theo iêu cầu đề bài:



    Mã:
    Sub Group()
     Dim Rng As Range, Group As Range
     Dim jJ As Long
                       
     Set Rng = Range([B4], [B65500].End(xlUp)).SpecialCells(xlCellTypeConstants)
     For Each Group In Rng.Areas
        If Group.Row < 41 Then Group.Interior.ColorIndex = 34 + Group(1).Row Mod 9
        For jJ = 1 To 9
            Group.Offset(jJ).FormulaR1C1 = "=ROUND(R[-1]C+(R[" & 10 - jJ & "]C-R[-" & jJ & "]C)/10,2)"
            If Group.Row < 41 Then
                Group.Offset(jJ, 1).FormulaR1C1 = "=rc[-1]-r[-1]c[-1]"
                If jJ = 9 Then _
                    Group.Offset(jJ, 2).FormulaR1C1 = "=rc[-2]+ rc[-1]"
            End If
        Next jJ
     Next Group
    End Sub

  4. #14
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Adding empty rows, Help!




    Adding empty rows, Help!
    I am trying to use following macro to insert rows in a spreadsheet: . . . . .
    :nguguc: :quechua:​

  5. #15
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Adding empty rows, Help!

    Thêm 1 tham khảo cho bạn nào thấy cần:
    Chn thm dng trong EXCEL?

    :wc:

  6. #16
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Các cách thêm dòng mới vô 1 CSDL (cơ sở dữ liệu) đã sẵn




    Mình có trang tính dữ liệu (Tên là 'Du Lieu'), gồm nhiều dòng dữ liệu của các trướng từ cột [A] đến cột [Q]
    Trong đó các trường từ cột trở đi có gán công thức trích dữ liệu từ cột [G]
    Mình cần các bạn viết macro để copy các dòng này sang trang tính 'TONG HOP' với các điều kiện như sau:

    Nếu cột [j] trở đi (đến cột [Q]) có dữ liệu thì tạo số dòng mới (tương ứng với số cột sau cột của dòng đang chép có dữ liệu)

    Dữ liệu trong các cột sau sẽ được chép vô cột của dòng mới tạo



    Xin các bạn xem file sẽ rõ hơn & chúc vui!

  7. #17
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Bài toán có thể giải quyết bằng cách thêm dòng mới như bài trước đây đã đề cập

    Bài toán như sau:
    Tôi có 2 hảng dữ liệu kiểu ngày trên 2 cột & [J] của trang tính "S1" như minh họa dưới đây:



    Mã:
    |(Cột B) ||......|(Cột J) |
    |08/20/13||......|08/07/13|
    |09/06/13||......|08/16/13|
    |09/23/13||......|08/25/13|
    |10/10/13||......|09/03/13|
    |10/27/13||......|09/12/13|
    |. . . . ||......|09/21/13|
    |. . . . ||......|09/30/13|
    |. . . . ||......|10/09/13|
    |. . . . ||......|10/18/13|
    Nhiệm vụ đề ra là dùng 1 macro để chuyển gộp 2 bảng số liệu này thành 1 ờ các cột [B...C] như dưới đây



    Mã:
    |(Cột B) |(Cột C) |
    |08/20/13|08/07/13|
    |. . . . |08/16/13|
    |. . . . |08/25/13|
    |09/06/13|09/03/13|
    |09/23/13|09/12/13|
    |. . . . |09/21/13|
    |. . . . |09/30/13|
    |10/10/13|10/09/13|
    |10/27/13|10/18/13|
    Yêu cầu như trang bảng là nhóm liên tục theo tháng ở cột theo số liệu đã xếp tăng dần của cột [J] (& đã được chép sang [C])

    Bài toán này đã được đưa ra bỡi HYEN17 tại bài 839 của topic ?? vui v? VBA! - Page 84 & lời giải của VetMini
    Các bạn có thể tham khảo.
    Tuy nhiên xin báo trước các bạn là bài giải đó rất "hàn lâm", trình độ sơ sài VBA chưa thể với tới được;

    Sau đây mình xin giới thiệu 1 macro đơn giản hơn để giải bài này qua các bước sau:

    1./ Tạo vòng lặp duyệt từ trên xuống dưới dữ liệu tại cột [J], khi nào chuyển sang tháng khác thì ghi lại số ngày trong tháng đã duyệt qua vào nơi thích hợp
    2./ Thêm số dòng cần thiết cho bảng số liệu tại
    3./ Chép số liệu từ cột [J] sang cột [C]


    Tuy nhiên nội dung macro mà mình đưa ra dưới đây là hơn khác. Vì dữ liệu thay vì ở cột [J] cùng trang tính, người ta đã đem nó sang trang tính khác (Các bạn chú ý tên trang tính sẽ rõ hơn)

    Nội dung nó như sau:



    Mã nguồn PHP:
    [COLOR=#000000]
    Option Explicit Sub gpeTabl[/COLOR][COLOR=#007700]() [/COLOR][COLOR=#0000BB]Dim Cls [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Sh [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Worksheet[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Rng [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Cll [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range Dim SoNgay [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Long[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Long Sheet1[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Select[/COLOR][COLOR=#007700]: [/COLOR][COLOR=#0000BB]Set Sh [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]ThisWorkbook[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Worksheets[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"Sheet2"[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Set Rng [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Sh[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Sh[/COLOR][COLOR=#007700].[[/COLOR][COLOR=#0000BB]b1[/COLOR][COLOR=#007700]], [/COLOR][COLOR=#0000BB]Sh[/COLOR][COLOR=#007700].[[/COLOR][COLOR=#0000BB]b2[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]End[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]xlDown[/COLOR][COLOR=#007700])) For [/COLOR][COLOR=#0000BB]Each Cls In Range[/COLOR][COLOR=#007700]([[/COLOR][COLOR=#0000BB]b2[/COLOR][COLOR=#007700]], [[/COLOR][COLOR=#0000BB]b2[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]End[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]xlDown[/COLOR][COLOR=#007700])) [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]1 [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]Month[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Cls[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Offset[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value[/COLOR][COLOR=#007700]) > [/COLOR][COLOR=#0000BB]Month[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Cls[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Value[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Then [/COLOR][COLOR=#007700]For [/COLOR][COLOR=#0000BB]Each Cll In Rng [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]Month[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Cll[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Value[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#0000BB]Month[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Cls[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Value[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Then SoNgay [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]1 [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]SoNgay Next Cll Cls[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Offset[/COLOR][COLOR=#007700](, [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]SoNgay [/COLOR][COLOR=#007700]- [/COLOR][COLOR=#0000BB]jJ jJ [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]0[/COLOR][COLOR=#007700]: [/COLOR][COLOR=#0000BB]SoNgay [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]0 End [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]Next Cls [/COLOR][COLOR=#007700]For [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]= [[/COLOR][COLOR=#0000BB]C65500[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]End[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]xlUp[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Row To 2 Step [/COLOR][COLOR=#007700]-[/COLOR][COLOR=#0000BB]1 With Cells[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]jJ[/COLOR][COLOR=#007700], [/COLOR][COLOR=#DD0000]"C"[/COLOR][COLOR=#007700]) If .[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]> [/COLOR][COLOR=#0000BB]0 Then [/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Offset[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Resize[/COLOR][COLOR=#007700](.[/COLOR][COLOR=#0000BB]Value[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]EntireRow[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Insert End [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]End With Next jJ Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Copy Destination[/COLOR][COLOR=#007700]:=[[/COLOR][COLOR=#0000BB]c2[/COLOR][COLOR=#007700]] [/COLOR][COLOR=#0000BB]End Sub [/COLOR

  8. #18
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề:Thêm dòng cho ngày còn thiếu của 1 CSDL

    Các bạn cần hình dung sự việc như sau:

    Tôi có trang tính mà từ [A4] cho đến [AI4] là tiêu đề của 1 CSDL đồ sộ; Trong đó trường 'InDate' ở cột [k:k] là trường ghi ngày tháng đáng được quan tâm & cột [C:C] là trường mã khách hàng

    Đây là CSDL ghi lại hoạt động kinh doanh của các khách hàng thân thiết cho 1 công ti cỡ lớn.

    Thêm nữa, tại [D2] tôi cần nhập ngày bắt đầu; Tại [G2] cần nhập ngày kết thúc.

    TRong khoảng thời gian từ NgayBD cho đến NgayKT này có một số không ít khách hàng không tới quan hệ với công ti;
    Tuy nhiên nhiệm vụ của tôi là mỗi khách hàng trong 1 ngày nào đó giữa NgayBD & NgayKT, trừ ngày CN
    chưa đến giao dịch như cũng thêm cho người ấy 1 dòng
    (Tất nhiên dòng thêm đó cần có dữ liệu thuộc về khác hàng đó trong 4 trường [A:C & K])

    Xin mời các bạn tham khảo macro sau:



    Mã nguồn PHP:
    [COLOR=#000000]
    Option Explicit Sub AddRowsForMissingDates[/COLOR][COLOR=#007700]() [/COLOR][COLOR=#0000BB]Dim Cls [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Rng [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]sRng [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range Dim Dat [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Date[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]SoNgay [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Integer[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Long Sheet1[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Select[/COLOR][COLOR=#007700]: [/COLOR][COLOR=#0000BB]Dat [/COLOR][COLOR=#007700]= [[/COLOR][COLOR=#0000BB]D2[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]Value SoNgay [/COLOR][COLOR=#007700]= [[/COLOR][COLOR=#0000BB]g2[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]- [/COLOR][COLOR=#0000BB]Dat Sheets[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"GPE"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"fName"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Copy Destination[/COLOR][COLOR=#007700]:=[[/COLOR][COLOR=#0000BB]Ba1[/COLOR][COLOR=#007700]] [/COLOR][COLOR=#0000BB]Application[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]ScreenUpdating [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]False [/COLOR][COLOR=#007700]For [/COLOR][COLOR=#0000BB]Each Cls In [/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000BB]Ba1[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]CurrentRegion [/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000BB]ca2[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Cls[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Value Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"B5"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]CurrentRegion[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]AdvancedFilter Action[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlFilterCopy[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]_ CriteriaRange[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"CA1:CA2"[/COLOR][COLOR=#007700]), [/COLOR][COLOR=#0000BB]CopyToRange[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"CA4:CK4"[/COLOR][COLOR=#007700]), [/COLOR][COLOR=#0000BB]Unique[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]False Set Rng [/COLOR][COLOR=#007700]= [[/COLOR][COLOR=#0000BB]ck5[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]Resize[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]35[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]NumberFormat [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#DD0000]"mm/dd/yyyy" [/COLOR][COLOR=#007700]For [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]0 To SoNgay Set sRng [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Find[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Format[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Dat [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]jJ[/COLOR][COLOR=#007700], [/COLOR][COLOR=#DD0000]"mm/dd/yyyy"[/COLOR][COLOR=#007700]), , [/COLOR][COLOR=#0000BB]xlValues[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]xlWhole[/COLOR][COLOR=#007700]) If [/COLOR][COLOR=#0000BB]sRng Is Nothing Then [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]Weekday[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Dat [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]jJ[/COLOR][COLOR=#007700]) > [/COLOR][COLOR=#0000BB]1 Then With [/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000BB]A65500[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]End[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]xlUp[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Offset[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) .[/COLOR][COLOR=#0000BB]Resize[/COLOR][COLOR=#007700](, [/COLOR][COLOR=#0000BB]3[/COLOR][COLOR=#007700]) = [[/COLOR][COLOR=#0000BB]Ca5[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]Resize[/COLOR][COLOR=#007700](, [/COLOR][COLOR=#0000BB]3[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value Cells[/COLOR][COLOR=#007700](.[/COLOR][COLOR=#0000BB]Row[/COLOR][COLOR=#007700], [/COLOR][COLOR=#DD0000]"K"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Dat [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]jJ End With End [/COLOR][COLOR=#007700]If Else [/COLOR][COLOR=#0000BB]End [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]Next jJ Next Cls Application[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]ScreenUpdating [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]True [/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000BB]B5[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]CurrentRegion[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Sort Key1[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"A5"[/COLOR][COLOR=#007700]), [/COLOR][COLOR=#0000BB]Order1[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlAscending[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Key2[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"K5"[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]_ [/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Order2[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlAscending[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Header[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlGuess[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]OrderCustom[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]MatchCase[/COLOR][COLOR=#007700]:= [/COLOR][COLOR=#0000BB]_ False[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Orientation[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlTopToBottom End Sub [/COLOR

  9. #19
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Các cách thêm dòng mới vô 1 CSDL (cơ sở dữ liệu) đã sẵn

    Mình có 1 CSDL như bảng sau


    Mã:
    STT|Ten KH|Loại |F.Loại|Số |...
    18 |Lâm KG|Dầu  | Lớn  |90 |...
    19 |Lâm KG|Dầu  |Nhỏ   |83 |...
    20 |Lâm KG|Tapan|Trung |56 |...      
    21 |Mân RG|KK   | Lớn  |452|...  
    ...|. ..  |...  |...   |453|...
    (Trong bảng liệt kê đơn hàng gỗ của các khách hàng ghi ở cột 2;
    Tên loại gỗ được ghi ở cột thứ 3;
    Cột 4 là fân loại gỗ, & cột 5 là ghi mã số
    & . . . . . .)

    Giờ cần 1 báo cáo theo 1 trật tự sắp xếp theo 3 cột [Loại gỗ], kế đến theo fân loại & cuối cùng là tăng dần theo [Mã số]
    Hơn nữa, sau mỗi nhóm khác nhau 1 trong 3 tiêu chí này ta cộng số lượng của từng nhóm.

    Thực ra đây sẽ là bài toán thêm dòng khi duyệt CSDL, Chỉ cần thay khác 1 trong 3 tiêu chí ta sẽ fải thêm dòng mới vô CSDL

    Chi tiết các bạn có thể tham khảo tại Nh? gip t?ng h?p v phn lo?i hng ha (#8-)

  10. #20
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Các cách thêm dòng mới vô 1 CSDL (cơ sở dữ liệu) đã sẵn

    H?i c�ch ch�n th�m d�ng



    Em có sheet s1 ở cột PART NÓ đã sắp sếp dữ liệu theo thứ tự, giờ muốn thêm một dòng trắng vào cuối đoạn những dòng dữ liệu trùng nhau như đoạn đầu trong sheet s2 mà không phải làm thủ công.
    Các bác giúp em với!
    Mã nguồn PHP:
    [COLOR=#000000]
    Option Explicit Sub ChenDong[/COLOR][COLOR=#007700]() [/COLOR][COLOR=#0000BB]Dim Rws [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Long[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Col [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Byte[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]J [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Long[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]W [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Byte[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Th [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Integer Dim Rng [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]sArr[/COLOR][COLOR=#007700]() [/COLOR][COLOR=#0000BB]Sheets[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"S1"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Select Set Rng [/COLOR][COLOR=#007700]= [[/COLOR][COLOR=#0000BB]A2[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]CurrentRegion Rws [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Rows[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Count Col [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Columns[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Count sArr[/COLOR][COLOR=#007700]() = [/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Resize[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Rws[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Col[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value ReDim dArr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]1 To 2 [/COLOR][COLOR=#007700]* [/COLOR][COLOR=#0000BB]Rws[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1 To Col [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) For [/COLOR][COLOR=#0000BB]J [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]1 To UBound[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]sArr[/COLOR][COLOR=#007700]()) If [/COLOR][COLOR=#0000BB]J [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]1 Then dArr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]J[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#DD0000]"GPE" [/COLOR][COLOR=#007700]For [/COLOR][COLOR=#0000BB]W [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]1 To Col dArr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]J[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]W [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#0000BB]sArr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]J[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]W[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Next W [/COLOR][COLOR=#007700]Else [/COLOR][COLOR=#0000BB]dArr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]J[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#0000BB]sArr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]J[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) For [/COLOR][COLOR=#0000BB]W [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]1 To Col dArr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]J[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]W [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#0000BB]sArr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]J[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]W[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Next W On Error Resume Next [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]sArr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]J[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) <> [/COLOR][COLOR=#0000BB]sArr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]J [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Then Th [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Th [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]1 dArr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Rws [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]Th[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#0000BB]sArr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]J[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) & [/COLOR][COLOR=#DD0000]"A" [/COLOR][COLOR=#0000BB]End [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]End [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]Next J [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]Err [/COLOR][COLOR=#007700]> [/COLOR][COLOR=#0000BB]0 Then Err [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]0 Sheets[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"S2"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Select [/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000BB]a1[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]Resize[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]2 [/COLOR][COLOR=#007700]* [/COLOR][COLOR=#0000BB]Rws[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Col [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]dArr[/COLOR][COLOR=#007700]() [[/COLOR][COLOR=#0000BB]a1[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]CurrentRegion[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Sort Key1[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"A2"[/COLOR][COLOR=#007700]), [/COLOR][COLOR=#0000BB]Order1[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlAscending[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Key2[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"B2"[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]_ [/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Order2[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlAscending[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Header[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlGuess[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]OrderCustom[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]MatchCase[/COLOR][COLOR=#007700]:= [/COLOR][COLOR=#0000BB]_ False[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Orientation[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlTopToBottom Columns[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"A:A"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Hidden [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]True End Sub[/COLOR

 

 
Trang 2 của 6 Đầu tiênĐầu tiên 1234 ... CuốiCuối

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •