Macros copy dữ liệu sang sheet mới trong google sheet Chi tiết

Macros copy dữ liệu sang sheet mới trong google sheet Chi tiết

Thủ Thuật về Macros copy tài liệu sang sheet mới trong google sheet 2022


Bạn đang tìm kiếm từ khóa Macros copy tài liệu sang sheet mới trong google sheet được Update vào lúc : 2022-10-21 10:40:21 . Với phương châm chia sẻ Thủ Thuật Hướng dẫn trong nội dung bài viết một cách Chi Tiết 2022. Nếu sau khi tìm hiểu thêm tài liệu vẫn ko hiểu thì hoàn toàn có thể lại Comments ở cuối bài để Admin lý giải và hướng dẫn lại nha.



  • Nội dung

  • Tóm tắt

  • I. Copy và Di

    chuyển dải ô trong một sheet

  • II. Copy / Di chuyển dải ô từ sheet này sang sheet khác

  • III. Xóa hàng, xóa

    cột bằng App Script

  • IV. Tóm tắt những hàm lấy phân lớp Sheet

Nội dung chính


  • II. Copy / Di chuyển dải ô từ sheet này sang sheet khác

  • III. Xóa hàng, xóa cột bằng App Script

  • IV. Tóm tắt những hàm lấy phân lớp Sheet

Đây là Bài 3 trong chuỗi serie Học Ứng dụng Google App Script vào Google Sheet. Trong bài này, tiềm năng chính của toàn bộ chúng ta là tìm hiểu cách Copy và Di chuyển dải ô từ sheet này sang sheet khác. Clip hướng dẫn:



Nội dung


  • Copy và Di chuyển dải ô trong một sheet

  • Copy và Di chuyển dải ô từ sheet này sang sheet khác

  • Xóa hàng, xóa

    cột

  • Tóm tắt những hàm lấy phân lớp Sheet

Tóm tắt


  • copyTo() copy dải ô đứng trước và paste vào vị trí dải ô trong ngoặc

  • moveTo() chuyển dải ô đước trước vào trị ví dải ô trong ngoặc

  • getSheetByName() đi đến sheet mang tên trong ngoặc

  • deleteRow() xóa dòng có số thứ tự trong ngoặc

  • deleteColumn() xóa cột có số thứ tự trong ngoặc

  • deleteRows(rowPosition,

    howMany) xóa howMany dòng, bắt nguồn từ dòng rowPosition

  • deleteColumns(columnPosition, howMany) xóa howMany cột, bắt nguồn từ cột columnPosition

Ở những bài trước thì tôi đã trình làng những hàm getValue(), getValues(), setValue() và setValues(). Các hàm này được thiết lập nhằm mục đích mục tiêu đó đó là lấy giá trị và đặt giá trị. Chúng ta đã tận dụng điều này để copy và paste dải ô. Tuy

nhiên thì những hàm trên không chuyên dùng để làm vậy. Thay vào đó toàn bộ chúng ta nên dùng hàm copyTo()moveTo().


Ở Bài 2: Các hàm lấy giá trị và đặt giá trị dải ô,mình có đoạn code ở đầu cuối như sau:



functionmyFunction()


  varss    =SpreadsheetApp.getActiveSpreadsheet();


  varsheet=

ss.getActiveSheet();


  varrange=sheet.getRange(“A1:D7”);


  vargiatri1=

range.getValues();  


  vardich=sheet.getRange(“F8:I14”);


  dich.setValues(giatri1);



Chức năng của nó là gán những giá trị của dải ô A1:D7 vào biến giatri1, tiếp theo đó đi đến dải ô F8:I14 để ghi những giá trị đó vào. Đây hoàn toàn giống với việc toàn bộ chúng ta đi copy và paste. App Script phục vụ 1 hàm chuyên dùng để làm điều này, đó là copyTo(). Bây giờ, mình không dùng đến những hàm getValues() và setValues() nữa, mình viết lại như sau:



functionmyFunction()


  varss    =SpreadsheetApp.getActiveSpreadsheet();


  varsheet=

ss.getActiveSheet();


  varrange=sheet.getRange(“A1:D7”);


  vardich=

sheet.getRange(“F8:I14”);


  range.copyTo(dich);



Câu lệnh range.copyTo(dich); thực thi trách nhiệm:


  • Đi đến dải ô trong biến range -> dải A1:D7

  • Copy những ô trong dải

  • Đi đến dải ô F8:I14 để Paste (Dán) vào

  • copyTo() là hàm copy dải ô đứng trước và paste vào vị trí dải ô trong ngoặc


    Lưu ý rằng, biến “range” và biến “dich” phải có cùng kích thước (7 hàng, 4 cột). Tương tự dải ô mà

    những bạn muốn copy phải cùng kích thước hàng cột với dải ô mà cách bạn paste vào
    .


    Cách sử dụng hàm moveTo cũng tương tự như copyTo


    moveTo() là hàm di tán dải ô đước trước vào trị ví dải ô trong ngoặc



    functionmyFunction()


      varss    =SpreadsheetApp.getActiveSpreadsheet();


      varsheet=

    ss.getActiveSheet();


      varrange=sheet.getRange(“A1:D7”);


      vardich=

    sheet.getRange(“F8:I14”);


      range.moveTo(dich);



    Tuy nhiên vì bản chất là “move” nên nó tài liệu ở dải ô cũ cũng không hề. Xem hình:


    Macros copy dữ liệu sang sheet mới trong google sheet


    II. Copy / Di chuyển dải ô từ sheet này sang sheet khác


    Để copy

    hoặc di tán dải ô từ sheet này sang sheet khác thì bạn phải xác lập sheet mà bạn muốn copy / move vào (sheet đích đến). Để phân biệt, mình sẽ đặt sheet0 là sheet mà toàn bộ chúng ta lấy tài liệu, và sheet1 là sheet đích đến.


    Mục tiêu: di tán dải ô A1:D7 ở sheet0 và paste sang dải ô F8:I14 ở sheet1


    Để xác lập sheet khác, toàn bộ chúng ta dùng hàm getSheetByName()


    getSheetByName() là

    hàm đi đến sheet mang tên trong ngoặc


    Lưu ý tên phải để trong dấu ngoặc kép ” “



    functionmyFunction()


      varss    =SpreadsheetApp.getActiveSpreadsheet();


      varsheet0=

    ss.getActiveSheet();


      varsheet1=ss.getSheetByName(“sheet1”);


      varrange=

    sheet0.getRange(“A1:D7”);


      vardich=sheet1.getRange(“F8:I14”);


      range.moveTo(dich);



    Ở trên, tôi đã thay biến sheet cũ thành sheet0 (để phân biệt với sheet1). Biến sheet1 sẽ đi đến sheet mang tên là sheet1. Đồng thời biến dich thời gian hiện nay sẽ là dải ô F8:I14 trong sheet1


    Vì cách dùng của copyTo() và moveTo() là giống nhau nên tôi chỉ minh họa moveTo() thôi, những bạn hoàn toàn có thể tự thử với copyTo().


    III. Xóa hàng, xóa cột bằng App Script


    Để xóa 1 hàng hoặc 1 cột trong một sheet, những bạn sử dụng hàm deleteRow() hoặc deleteColumn()


    deleteRow() thực thi việc xóa dòng có số thứ tự trong ngoặc


    deleteColumn() thực thi việc xóa cột có số thứ tự trong ngoặc


    Ví dụ (không liên quan đến đoạn code trên), mình yêu thích xóa hàng 2 và cột 2 trong sheet đang thao tác (sheet0), mình viết như sau:



    functionxoahangcot()


      varss=SpreadsheetApp.getActiveSpreadsheet();


      varsheet=

    ss.getActiveSheet();


      sheet.deleteRow(2);


      sheet.deleteColumn(2);



    Macros copy dữ liệu sang sheet mới trong google sheetTrước khi chạy đoạn code trênMacros copy dữ liệu sang sheet mới trong google sheetSau khi chạy đoạn code thực thi xóa dòng 2 và cột 2


    Để xóa nhiều hàng / nhiều cột trong một sheet, toàn bộ chúng ta sử dụng hàm

    deleteRows() hoặc deleteColumns()


    deleteRows(rowPosition, howMany) thực thi việc xóa howMany dòng, bắt nguồn từ dòng rowPosition


    deleteColumns(columnPosition, howMany) thực thi việc xóa howMany cột, bắt nguồn từ cột columnPosition


    Quay lại đoạn code chính của toàn bộ chúng ta. Mình muốn làm 1 việc như sau:


    Sau khi đã di tán dải ô A1:D7 từ sheet0 sang F8:I14 ở sheet1, khu

    vực A1:D7 sẽ bị trống không. Bây giờ toàn bộ chúng ta sẽ xóa đi những hàng trống và cột trống đó. Có toàn bộ 7 dòng và 5 cột trống. Chúng ta được đoạn code hoàn hảo nhất như sau:



    functionmyFunction()


      varss    =SpreadsheetApp.getActiveSpreadsheet();


      varsheet0=

    ss.getActiveSheet();


      varsheet1=ss.getSheetByName(“sheet1”);


      varrange=

    sheet0.getRange(“A1:D7”);


      vardich=sheet1.getRange(“F8:I14”);


      range.moveTo(dich);


      sheet0.deleteRows(1,7);//Xóa 7 dòng, bắt nguồn từ dòng 1


      sheet0.deleteColumns(1,5);//Xóa 5 cột, bắt nguồn từ cột A



    Vậy là mình chia sẻ xong phần xóa dòng / cột. Tiếp đến mình sẽ tóm tắt những hàm lấy sheet.


    IV. Tóm tắt những hàm lấy phân lớp Sheet


    Chúng ta đã biết hàm getActiveSheet() sẽ lấy sheet mà toàn bộ chúng ta đang thao tác trên Google Sheet và getSheetByName() lấy sheet mang tên ở trong ngoặc. Ngoài ra để lấy sheet, toàn bộ chúng ta còn 1 hàm nữa, đó là getSheets().


    Bạn có

    thể đọc thêm về hàm getSheets() tại đây:


    https://developers.google.com/apps-script/reference/spreadsheet/spreadsheet#getsheets


    Mình muốn chia sẻ 1 cách dùng của getSheets() để lấy sheet có số thứ tự trong bảng tính. Để lý giải bằng lời thì hơi khó, nên mình sẽ lấy ví dụ cho dễ hiểu. Ở đoạn code chính, tôi đã dùng getActiveSheet() cho

    sheet0 và getSheetByName() cho sheet1. Bây giờ mình sẽ thay chúng bằng getSheets()



    functionmyFunction()


      varss    =SpreadsheetApp.getActiveSpreadsheet();


      varsheet0=

    ss.getSheets()[0];


      varsheet1=ss.getSheets()[1];


      varrange

    =sheet0.getRange(“A1:D7”);


      vardich=sheet1.getRange(“F8:I14”);


      range.moveTo(dich);


      sheet0.deleteRows(1,7);


      sheet0.deleteColumns(1,5);



    Bằng việc bỏ số thứ tự của sheet trong bảng tính vào trong [ ], tôi đã có kết quả tương tự. Lưu ý: sheet thứ nhất sẽ có được số thứ tự là 0, sheet thứ hai có số thứ tự là một trong,… Đó là vì trong Java Script, mảng khởi đầu đếm từ 0. Cho nên lúc gọi sheet0 tôi đã dùng getSheets()[0], còn gọi sheet1 thì dùng getSheets()[1]


    Macros copy dữ liệu sang sheet mới trong google sheetTrước khi chạy code. Bạn hãy chạy thử code để xem kết quả nhé ^^ Tải thêm tài liệu liên quan đến nội dung bài viết Macros copy tài liệu sang sheet mới trong google sheet


    Công Nghệ

    Google


    Macros copy dữ liệu sang sheet mới trong google sheetReply
    Macros copy dữ liệu sang sheet mới trong google sheet8
    Macros copy dữ liệu sang sheet mới trong google sheet0
    Macros copy dữ liệu sang sheet mới trong google sheet Chia sẻ


    Chia Sẻ Link Tải Macros copy tài liệu sang sheet mới trong google sheet miễn phí


    Bạn vừa Read tài liệu Với Một số hướng dẫn một cách rõ ràng hơn về Review Macros copy tài liệu sang sheet mới trong google sheet tiên tiến và phát triển nhất ShareLink Tải Macros copy tài liệu sang sheet mới trong google sheet Free.



    Thảo Luận vướng mắc về Macros copy tài liệu sang sheet mới trong google sheet


    Nếu sau khi đọc nội dung bài viết Macros copy tài liệu sang sheet mới trong google sheet vẫn chưa hiểu thì hoàn toàn có thể lại Comment ở cuối bài để Tác giả lý giải và hướng dẫn lại nha

    #Macros #copy #dữ #liệu #sang #sheet #mới #trong #google #sheet

    Related posts:

    Post a Comment

    Previous Post Next Post

    Discuss

    ×Close