Hướng dẫn get last row google sheets - lấy hàng cuối cùng trên google sheet

Đây là một số khác:

Show
=indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),""))))

Với phương trình cuối cùng là:

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))

Các phương trình khác ở đây hoạt động, nhưng tôi thích phương trình này vì nó giúp việc nhận được số hàng dễ dàng, điều mà tôi thấy tôi cần phải làm thường xuyên hơn. Chỉ cần số hàng sẽ như thế này:

=max(arrayformula(if(A:A<>"",row(A:A),"")))

Ban đầu tôi đã cố gắng tìm thấy điều này để giải quyết vấn đề bảng tính, nhưng không thể tìm thấy bất cứ điều gì hữu ích mà chỉ đưa ra số hàng của mục cuối cùng, vì vậy hy vọng điều này hữu ích cho ai đó.

Ngoài ra, điều này có thêm lợi thế rằng nó hoạt động cho bất kỳ loại dữ liệu nào theo bất kỳ thứ tự nào và bạn có thể có các hàng trống ở giữa các hàng có nội dung và nó không đếm các ô với các công thức đánh giá là "". Nó cũng có thể xử lý các giá trị lặp đi lặp lại. Tất cả trong tất cả, nó rất giống với phương trình sử dụng MAX ((G: G "")*Row (g: g)) trên đây, nhưng làm cho việc rút ra số hàng dễ dàng hơn một chút nếu đó là những gì bạn đang theo đuổi.

Ngoài ra, nếu bạn muốn đặt một tập lệnh trên trang của mình, bạn có thể tự mình dễ dàng nếu bạn có kế hoạch làm điều này rất nhiều. Đây là scirpt:

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}

Ở đây bạn chỉ có thể nhập thời gian sau nếu bạn muốn hàng cuối cùng trên cùng một trang mà bạn hiện đang chỉnh sửa:

=LASTROW()

Hoặc nếu bạn muốn hàng cuối cùng của một cột cụ thể từ bảng đó hoặc của một cột cụ thể từ một tờ khác, bạn có thể thực hiện như sau:

=LASTROW("Sheet1","A")

Và cho hàng cuối cùng của một tờ cụ thể nói chung:

=LASTROW("Sheet1")

Sau đó để có được dữ liệu thực tế, bạn có thể sử dụng gián tiếp:

=INDIRECT("A"&LASTROW())

hoặc bạn có thể sửa đổi tập lệnh trên tại hai dòng trả về cuối cùng (hai dòng cuối cùng vì bạn sẽ phải đặt cả bảng và cột để lấy giá trị thực từ một cột thực tế) và thay thế biến bằng cách sau:

return sheet.getRange(column + final).getValue();

return sheet.getRange(column + lastRow).getValue();

Một lợi ích của tập lệnh này là bạn có thể chọn nếu bạn muốn bao gồm các phương trình đánh giá thành "". Nếu không có đối số nào được thêm vào các phương trình đánh giá thành "" sẽ được tính, nhưng nếu bạn chỉ định một tờ và cột thì bây giờ chúng sẽ được tính. Ngoài ra, có rất nhiều sự linh hoạt nếu bạn sẵn sàng sử dụng các biến thể của tập lệnh.

Có lẽ quá mức cần thiết, nhưng tất cả có thể.

  • Tìm hiểu tập lệnh ứng dụng
    • Hướng dẫn
    • Tài liệu tham khảo
    • Mẫu
    • Ủng hộ
  • Xây dựng tiện ích bổ sung
  • Sử dụng API còn lại

Giữ tổ chức với các bộ sưu tập lưu và phân loại nội dung dựa trên sở thích của bạn. Save and categorize content based on your preferences.

Truy cập và sửa đổi bảng tính bảng tính. Các hoạt động phổ biến đang đổi tên một tờ và truy cập các đối tượng phạm vi từ trang tính.

Phương pháp

Phương phápLoại trở lạiMô tả ngắn gọn
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
33
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
Thêm siêu dữ liệu nhà phát triển với khóa được chỉ định vào trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
37
Thêm siêu dữ liệu nhà phát triển với khóa được chỉ định và khả năng hiển thị cho trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
Thêm siêu dữ liệu nhà phát triển với khóa được chỉ định vào trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
37
Thêm siêu dữ liệu nhà phát triển với khóa được chỉ định và khả năng hiển thị cho trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
Thêm siêu dữ liệu nhà phát triển với khóa được chỉ định vào trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
37
Thêm siêu dữ liệu nhà phát triển với khóa được chỉ định và khả năng hiển thị cho trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
39
Thêm siêu dữ liệu nhà phát triển với khóa và giá trị được chỉ định vào trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
41
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
Thêm siêu dữ liệu nhà phát triển với khóa được chỉ định vào trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
37
Thêm siêu dữ liệu nhà phát triển với khóa được chỉ định và khả năng hiển thị cho trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
Thêm siêu dữ liệu nhà phát triển với khóa được chỉ định vào trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
37
Thêm siêu dữ liệu nhà phát triển với khóa được chỉ định và khả năng hiển thị cho trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Kích hoạt bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
35
Thêm siêu dữ liệu nhà phát triển với khóa được chỉ định vào trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
37
Thêm siêu dữ liệu nhà phát triển với khóa được chỉ định và khả năng hiển thị cho trang tính.Thêm siêu dữ liệu nhà phát triển với khóa được chỉ định vào trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
37
Thêm siêu dữ liệu nhà phát triển với khóa được chỉ định và khả năng hiển thị cho trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
39
Thêm siêu dữ liệu nhà phát triển với khóa và giá trị được chỉ định vào trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
41
Thêm siêu dữ liệu nhà phát triển với khóa, giá trị và khả năng hiển thị được chỉ định cho trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
43
=max(arrayformula(if(A:A<>"",row(A:A),"")))
05
=max(arrayformula(if(A:A<>"",row(A:A),"")))
06
Trả về một mảng biểu đồ trên bảng này.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
07
=max(arrayformula(if(A:A<>"",row(A:A),"")))
08
Trả về nhóm cột ở chỉ số đã cho và độ sâu nhóm.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
09
=max(arrayformula(if(A:A<>"",row(A:A),"")))
10
Trả về
=max(arrayformula(if(A:A<>"",row(A:A),"")))
10 cho tất cả các nhóm cột trên trang tính.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
12
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Trả về độ sâu nhóm của cột tại chỉ mục đã cho.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
14
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Trả về độ sâu nhóm của cột tại chỉ mục đã cho.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
14
Nhận chiều rộng trong pixel của cột đã cho.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
16
=max(arrayformula(if(A:A<>"",row(A:A),"")))
17
Nhận tất cả các quy tắc định dạng có điều kiện trong bảng này.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
18
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96
Nhận tất cả các quy tắc định dạng có điều kiện trong bảng này.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
18
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96
Trả về ô hiện tại trong bảng hoạt động hoặc
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
49 nếu không có ô hiện tại.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
21
Trả về một
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96 tương ứng với các kích thước trong đó dữ liệu có mặt.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
24
=max(arrayformula(if(A:A<>"",row(A:A),"")))
25
Nhận tất cả các công thức nguồn dữ liệu.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
26
=max(arrayformula(if(A:A<>"",row(A:A),"")))
27
Nhận tất cả các bảng trục nguồn dữ liệu.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
28
=max(arrayformula(if(A:A<>"",row(A:A),"")))
29
Nhận tất cả các bảng nguồn dữ liệu.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
30
=max(arrayformula(if(A:A<>"",row(A:A),"")))
31
Nhận tất cả siêu dữ liệu của nhà phát triển liên quan đến bảng này.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
32
=max(arrayformula(if(A:A<>"",row(A:A),"")))
33
Trả về một mảng các bản vẽ trên trang tính.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
34
=max(arrayformula(if(A:A<>"",row(A:A),"")))
35
Trả về bộ lọc trong bảng này hoặc
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
49 nếu không có bộ lọc.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Trả về độ sâu nhóm của cột tại chỉ mục đã cho.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
14
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Trả về độ sâu nhóm của cột tại chỉ mục đã cho.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
14
Nhận chiều rộng trong pixel của cột đã cho.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
16
=max(arrayformula(if(A:A<>"",row(A:A),"")))
17
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Trả về độ sâu nhóm của cột tại chỉ mục đã cho.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
14
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Trả về độ sâu nhóm của cột tại chỉ mục đã cho.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
14
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Trả về độ sâu nhóm của cột tại chỉ mục đã cho.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
14
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Trả về độ sâu nhóm của cột tại chỉ mục đã cho.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
14
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Trả về độ sâu nhóm của cột tại chỉ mục đã cho.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
14
=max(arrayformula(if(A:A<>"",row(A:A),"")))
34
=max(arrayformula(if(A:A<>"",row(A:A),"")))
35
Trả về bộ lọc trong bảng này hoặc
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
49 nếu không có bộ lọc.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
37
=max(arrayformula(if(A:A<>"",row(A:A),"")))
38
Trả về URL cho biểu mẫu gửi phản hồi của nó cho bảng này hoặc
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
49 nếu bảng này không có biểu mẫu liên quan.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
40
Trả về số lượng cột đông lạnh.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
42
Trả về số lượng hàng đông lạnh.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
44
=max(arrayformula(if(A:A<>"",row(A:A),"")))
45
Trả về tất cả các hình ảnh trên lưới trên trang tính.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
46
Có được vị trí của tờ trong bảng tính cha mẹ của nó.Nhận tất cả các quy tắc định dạng có điều kiện trong bảng này.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
18
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96
Nhận tất cả các quy tắc định dạng có điều kiện trong bảng này.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
18
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96
Nhận tất cả các quy tắc định dạng có điều kiện trong bảng này.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
18
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96
Nhận tất cả các quy tắc định dạng có điều kiện trong bảng này.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
18
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96
Trả về ô hiện tại trong bảng hoạt động hoặc
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
49 nếu không có ô hiện tại.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
21
Trả về một
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96 tương ứng với các kích thước trong đó dữ liệu có mặt.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
08
=max(arrayformula(if(A:A<>"",row(A:A),"")))
24
=max(arrayformula(if(A:A<>"",row(A:A),"")))
25
=max(arrayformula(if(A:A<>"",row(A:A),"")))
10
Nhận tất cả các công thức nguồn dữ liệu.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
26
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
=max(arrayformula(if(A:A<>"",row(A:A),"")))
27
Nhận tất cả các bảng trục nguồn dữ liệu.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
=max(arrayformula(if(A:A<>"",row(A:A),"")))
28
=max(arrayformula(if(A:A<>"",row(A:A),"")))
29
Nhận tất cả các bảng nguồn dữ liệu.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
30
=max(arrayformula(if(A:A<>"",row(A:A),"")))
31
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Nhận tất cả siêu dữ liệu của nhà phát triển liên quan đến bảng này.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
32
=max(arrayformula(if(A:A<>"",row(A:A),"")))
34
=max(arrayformula(if(A:A<>"",row(A:A),"")))
35
Trả về bộ lọc trong bảng này hoặc
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
49 nếu không có bộ lọc.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
37
=max(arrayformula(if(A:A<>"",row(A:A),"")))
38
Trả về URL cho biểu mẫu gửi phản hồi của nó cho bảng này hoặc
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
49 nếu bảng này không có biểu mẫu liên quan.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
40
Trả về số lượng cột đông lạnh.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
42
Trả về số lượng hàng đông lạnh.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
44
=max(arrayformula(if(A:A<>"",row(A:A),"")))
45
Trả về tất cả các hình ảnh trên lưới trên trang tính.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
46
Có được vị trí của tờ trong bảng tính cha mẹ của nó.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
48
Trả về vị trí của cột cuối cùng có nội dung.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
50
Trả về vị trí của hàng cuối cùng có nội dung.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
52
Trả về số lượng cột hiện tại trong trang tính, bất kể nội dung.Trả về vị trí của hàng cuối cùng có nội dung.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
52
Trả về số lượng cột hiện tại trong trang tính, bất kể nội dung.Trả về vị trí của hàng cuối cùng có nội dung.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
52
Trả về số lượng cột hiện tại trong trang tính, bất kể nội dung.Trả về vị trí của hàng cuối cùng có nội dung.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
52
Trả về số lượng cột hiện tại trong trang tính, bất kể nội dung.Trả về vị trí của hàng cuối cùng có nội dung.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
52
Trả về số lượng cột hiện tại trong trang tính, bất kể nội dung.Trả về vị trí của hàng cuối cùng có nội dung.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
52
Trả về số lượng cột hiện tại trong trang tính, bất kể nội dung.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
54
Trả về số lượng hàng hiện tại trong trang tính, bất kể nội dung.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
56
Trả về vị trí của hàng cuối cùng có nội dung.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
52
Trả về số lượng cột hiện tại trong trang tính, bất kể nội dung.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
54
Trả về số lượng hàng hiện tại trong trang tính, bất kể nội dung.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
56
=max(arrayformula(if(A:A<>"",row(A:A),"")))
54
Trả về số lượng hàng hiện tại trong trang tính, bất kể nội dung.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
27
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
Chèn một cột trống trong một tờ tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
29
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
Chèn một cột trống trong một tờ tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
29
Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
31
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
31
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Chèn một số cột sau vị trí cột đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
33
Chèn một số cột trước vị trí cột đã cho.Chèn một số cột sau vị trí cột đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
33
Chèn một số cột trước vị trí cột đã cho.Chèn một số cột sau vị trí cột đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
33
Chèn một số cột trước vị trí cột đã cho.Chèn một số cột sau vị trí cột đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
33
Chèn một số cột trước vị trí cột đã cho.Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
31
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
31
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
Chèn một số cột sau vị trí cột đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
33
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
Chèn một số cột trước vị trí cột đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
35
Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
31
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
31
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34
Chèn một số cột sau vị trí cột đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
33
Chèn một số cột trước vị trí cột đã cho.Chèn một số cột sau vị trí cột đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
33
Chèn một số cột trước vị trí cột đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
35
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36
Chèn A
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
37 làm hình ảnh trong tài liệu ở một hàng và cột đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
35
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36
Chèn A
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
37 làm hình ảnh trong tài liệu ở một hàng và cột đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
35
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36
Chèn A
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
37 làm hình ảnh trong tài liệu ở một hàng và cột đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
35
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36
Chèn A
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
37 làm hình ảnh trong tài liệu ở một hàng và cột đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
35
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36
Chèn A
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
37 làm hình ảnh trong tài liệu ở một hàng và cột đã cho.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
38
Chèn A
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
37 làm hình ảnh trong tài liệu ở một hàng và cột đã cho, với phần bù pixel.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
41
Chèn một hình ảnh trong tài liệu ở một hàng và cột đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
43
Chèn một hình ảnh trong tài liệu ở một hàng và cột đã cho, với phần bù pixel.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
45
Chèn một hàng sau vị trí hàng đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
47
Chèn một hàng trước vị trí hàng đã cho.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
49
Chèn một hàng trống trong một tờ tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
51
Chèn một hoặc nhiều hàng trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
53
Chèn một số hàng sau vị trí hàng đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
55
Chèn một số hàng trước vị trí hàng đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
51
Chèn một hoặc nhiều hàng trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
53
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
51
Chèn một hoặc nhiều hàng trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
53
Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.Chèn một số hàng sau vị trí hàng đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
55
Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.Chèn một số hàng trước vị trí hàng đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
57
Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
58
Thêm một slicer mới vào bảng này.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
59
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
61
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
51
Chèn một hoặc nhiều hàng trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
53
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
Chèn một số hàng sau vị trí hàng đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
55
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
Chèn một số hàng trước vị trí hàng đã cho.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
57
Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
58
Thêm một slicer mới vào bảng này.Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
59
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
61
Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
04
Trả về liệu cột đã cho có bị ẩn bởi người dùng hay không.Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
63
Trả về
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
05 Nếu bố cục bảng này là từ phải sang trái.
Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
66
Trả về liệu hàng đã cho được ẩn bởi bộ lọc (không phải chế độ xem bộ lọc).Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
68
Trả về liệu hàng đã cho có bị ẩn bởi người dùng hay không.Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
68
Trả về liệu hàng đã cho có bị ẩn bởi người dùng hay không.Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
70
Trả về
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
05 nếu tờ hiện đang bị ẩn.
Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
70
Trả về
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
05 nếu tờ hiện đang bị ẩn.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
73
Di chuyển các cột được chọn theo phạm vi đã cho vào vị trí được chỉ định bởi
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
75.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
76
Di chuyển các hàng được chọn theo phạm vi đã cho đến vị trí được chỉ định bởi
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
75.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
79
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
80
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
Trả về một người xây dựng để tạo một biểu đồ mới cho bảng này.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
81
Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
82
Tạo một đối tượng có thể bảo vệ trang tính khỏi được chỉnh sửa ngoại trừ bởi người dùng có quyền.Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
83
Loại bỏ một biểu đồ khỏi tờ cha mẹ.Chèn một hoặc nhiều cột trống liên tiếp vào một tờ bắt đầu tại vị trí được chỉ định.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
85
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
Đặt phạm vi được chỉ định là
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
87 trong bảng hoạt động, với ô trên cùng bên trái trong phạm vi là
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
88.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
89
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
=max(arrayformula(if(A:A<>"",row(A:A),"")))
01
Đặt danh sách các phạm vi được chỉ định là
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
91 trong bảng hoạt động.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
92

Đặt vùng lựa chọn hoạt động cho bảng này.

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
94
Đặt lựa chọn hoạt động, như được chỉ định trong ký hiệu A1 hoặc ký hiệu R1C1.Mô tả ngắn gọn
=LASTROW()
49
=LASTROW()
50
Trả về một thể hiện
=LASTROW()
50 mô tả các quyền cho bảng hiện tại.
=LASTROW()
52
=max(arrayformula(if(A:A<>"",row(A:A),"")))
38
Nhận màu tab Tab hoặc
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
49 nếu tab tờ không có màu.
=LASTROW()
55
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
61
Đặt các quyền cho tờ hiện tại.

Tài liệu chi tiết

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),""))))) 33

Kích hoạt bảng này. Không thay đổi bản thân bản thân, chỉ có khái niệm của cha mẹ về tờ hoạt động.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
0

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ mới hoạt động.






=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),""))))) 43

Lối nối một hàng vào dưới cùng của vùng dữ liệu hiện tại trong trang tính.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
1

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
60
=LASTROW()
61
Một mảng các giá trị để chèn sau hàng cuối cùng trong trang tính.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ mới hoạt động.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
43

Lối nối một hàng vào dưới cùng của vùng dữ liệu hiện tại trong trang tính.

  • Thông số
  • Tên


Loại hình

Sự mô tả

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ mới hoạt động.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
43

Lối nối một hàng vào dưới cùng của vùng dữ liệu hiện tại trong trang tính.

  • Thông số
  • Tên


Loại hình

Sự mô tả

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
2

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
60
=LASTROW()
61
Một mảng các giá trị để chèn sau hàng cuối cùng trong trang tính.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ mới hoạt động.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
43

Lối nối một hàng vào dưới cùng của vùng dữ liệu hiện tại trong trang tính.

  • Thông số
  • Tên


Loại hình

Sự mô tả

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
3

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
60
=LASTROW()
61
Một mảng các giá trị để chèn sau hàng cuối cùng trong trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ, hữu ích cho chuỗi phương pháp.
=LASTROW()
61
Một mảng các giá trị để chèn sau hàng cuối cùng trong trang tính.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ mới hoạt động.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
43

Lối nối một hàng vào dưới cùng của vùng dữ liệu hiện tại trong trang tính.

  • Thông số
  • Tên


Loại hình

Sự mô tả

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
4

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
60
=LASTROW()
61
Một mảng các giá trị để chèn sau hàng cuối cùng trong trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ, hữu ích cho chuỗi phương pháp.
=LASTROW()
61
Một mảng các giá trị để chèn sau hàng cuối cùng trong trang tính.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ mới hoạt động.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
43

Lối nối một hàng vào dưới cùng của vùng dữ liệu hiện tại trong trang tính.

  • Thông số
  • Tên


Loại hình

Sự mô tả

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
5

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ mới hoạt động.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
43

Lối nối một hàng vào dưới cùng của vùng dữ liệu hiện tại trong trang tính.

  • Thông số
  • Tên


Loại hình

Sự mô tả

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
6

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
60
=LASTROW()
61
Một mảng các giá trị để chèn sau hàng cuối cùng trong trang tính.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ, hữu ích cho chuỗi phương pháp.

TênLoại hìnhSự mô tả
=LASTROW()
60
=LASTROW()
61
Một mảng các giá trị để chèn sau hàng cuối cùng trong trang tính.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ, hữu ích cho chuỗi phương pháp.
=LASTROW()
61
Một mảng các giá trị để chèn sau hàng cuối cùng trong trang tính.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ mới hoạt động.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
43

Lối nối một hàng vào dưới cùng của vùng dữ liệu hiện tại trong trang tính.

  • Thông số
  • Tên


Loại hình

Sự mô tả

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
7

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
43

Lối nối một hàng vào dưới cùng của vùng dữ liệu hiện tại trong trang tính.

  • Thông số
  • Tên


Loại hình

Sự mô tả

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
8

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ mới hoạt động.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
43

Lối nối một hàng vào dưới cùng của vùng dữ liệu hiện tại trong trang tính.

  • Thông số
  • Tên


Loại hình

Sự mô tả

=LASTROW()
60

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
9

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ mới hoạt động.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
43

Lối nối một hàng vào dưới cùng của vùng dữ liệu hiện tại trong trang tính.

  • Thông số
  • Tên


Loại hình

Sự mô tả

=max(arrayformula(if(A:A<>"",row(A:A),"")))
0

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ mới hoạt động.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
43

Lối nối một hàng vào dưới cùng của vùng dữ liệu hiện tại trong trang tính.

  • Thông số
  • Tên


Loại hình

Sự mô tả

=max(arrayformula(if(A:A<>"",row(A:A),"")))
1

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ mới hoạt động.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
43

Lối nối một hàng vào dưới cùng của vùng dữ liệu hiện tại trong trang tính.

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),""))))) 70

Sụp đổ tất cả các nhóm hàng trên tờ.

=max(arrayformula(if(A:A<>"",row(A:A),"")))
2

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),""))))) 70

Sụp đổ tất cả các nhóm hàng trên tờ.

=max(arrayformula(if(A:A<>"",row(A:A),"")))
3

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.
Ủy quyềnCác tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
72
Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".Thông số

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64



=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),""))))) 70

Sụp đổ tất cả các nhóm hàng trên tờ.

=max(arrayformula(if(A:A<>"",row(A:A),"")))
4

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.
Ủy quyềnCác tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
72
Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".Thông số

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=max(arrayformula(if(A:A<>"",row(A:A),"")))
5

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.
Ủy quyềnCác tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
72
Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".Thông số

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),""))))) 72

Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".

=max(arrayformula(if(A:A<>"",row(A:A),"")))
6

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.
Ủy quyềnCác tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
72
Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".Thông số
TênSao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".Thông số

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),""))))) 72

Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".

=max(arrayformula(if(A:A<>"",row(A:A),"")))
7

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.
Ủy quyềnCác tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
72
Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".Thông số

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),""))))) 72

Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".

=max(arrayformula(if(A:A<>"",row(A:A),"")))
8

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.
Ủy quyềnCác tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
72
Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".Thông số
TênSao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".Thông số

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),""))))) 72

Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".

=max(arrayformula(if(A:A<>"",row(A:A),"")))
9

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
    
    72


Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".

Thông số

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
0

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),""))))) 72

Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
1

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.
Ủy quyềnCác tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
72
Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".Thông số

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),""))))) 72

Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
2

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.
Ủy quyềnCác tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
72
Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".Thông số

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),""))))) 72

Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".

Thông số It's preferrable to use

=max(arrayformula(if(A:A<>"",row(A:A),"")))
18, which the returns the current highlighted cell.

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
3

Trở về

Tên

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),""))))) 72

Sao chép trang tính vào một bảng tính đã cho, có thể giống như bảng tính với nguồn. Bảng sao chép được đặt tên là "Bản sao của [Tên gốc]".

Thông số

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
4

Trở về

Tên

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64

Xem thêm

  • function lastRow(sheet,column) {
      var ss = SpreadsheetApp.getActiveSpreadsheet();
      if (column == null) {
        if (sheet != null) {
           var sheet = ss.getSheetByName(sheet);
        } else {
          var sheet = ss.getActiveSheet();
        }
        return sheet.getLastRow();
      } else {
        var sheet = ss.getSheetByName(sheet);
        var lastRow = sheet.getLastRow();
        var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
        for (i=0;i<array.length;i++) {
          if (array[i] != '') {       
            var final = i + 1;
          }
        }
        if (final != null) {
          return final;
        } else {
          return 0;
        }
      }
    }
    
    85


=max(arrayformula(if(A:A<>"",row(A:A),""))) 00

Trả về danh sách các phạm vi hoạt động trong bảng hoạt động hoặc

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
49 nếu không có phạm vi hoạt động.

Nếu có một phạm vi duy nhất được chọn, điều này hoạt động như một cuộc gọi

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
97.

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
5

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64

Xem thêm

  • function lastRow(sheet,column) {
      var ss = SpreadsheetApp.getActiveSpreadsheet();
      if (column == null) {
        if (sheet != null) {
           var sheet = ss.getSheetByName(sheet);
        } else {
          var sheet = ss.getActiveSheet();
        }
        return sheet.getLastRow();
      } else {
        var sheet = ss.getSheetByName(sheet);
        var lastRow = sheet.getLastRow();
        var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
        for (i=0;i<array.length;i++) {
          if (array[i] != '') {       
            var final = i + 1;
          }
        }
        if (final != null) {
          return final;
        } else {
          return 0;
        }
      }
    }
    
    85


=max(arrayformula(if(A:A<>"",row(A:A),""))) 00

Trả về danh sách các phạm vi hoạt động trong bảng hoạt động hoặc

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
49 nếu không có phạm vi hoạt động.

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Xem thêm

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
85

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
6

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Xem thêm

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
85

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
7

=max(arrayformula(if(A:A<>"",row(A:A),"")))
00

Trả về danh sách các phạm vi hoạt động trong bảng hoạt động hoặc
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
49 nếu không có phạm vi hoạt động.
Nếu có một phạm vi duy nhất được chọn, điều này hoạt động như một cuộc gọi
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
97.
Trở về
=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động
Ủy quyền
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
89
=max(arrayformula(if(A:A<>"",row(A:A),"")))
03
Ủy quyền
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
89

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Xem thêm

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
85

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
8

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Xem thêm

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
85

=max(arrayformula(if(A:A<>"",row(A:A),"")))
00

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
9

=max(arrayformula(if(A:A<>"",row(A:A),"")))
00

Trả về danh sách các phạm vi hoạt động trong bảng hoạt động hoặc
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
49 nếu không có phạm vi hoạt động.
Nếu có một phạm vi duy nhất được chọn, điều này hoạt động như một cuộc gọi
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
97.
Trở về
=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động
Ủy quyền
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
89

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Xem thêm

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
85

=LASTROW()
0

=max(arrayformula(if(A:A<>"",row(A:A),"")))
00

Trả về danh sách các phạm vi hoạt động trong bảng hoạt động hoặc
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
49 nếu không có phạm vi hoạt động.
Nếu có một phạm vi duy nhất được chọn, điều này hoạt động như một cuộc gọi
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
97.
Trở về
=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động
Ủy quyền
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
89

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Xem thêm

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
85

=LASTROW()
1

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Xem thêm

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
85

=LASTROW()
2

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Xem thêm

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
85

=max(arrayformula(if(A:A<>"",row(A:A),"")))
00

=LASTROW()
3

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Xem thêm

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
85

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Xem thêm

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
85

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Xem thêm

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
85

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
01 - Danh sách các phạm vi hoạt động

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64



=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

=LASTROW()
4

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

=LASTROW()
5

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

=LASTROW()
6

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

Trở về

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

=LASTROW()
8

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

=LASTROW()
9

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

=LASTROW()
9

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

=LASTROW("Sheet1","A")
1

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

=LASTROW("Sheet1","A")
2

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

=LASTROW("Sheet1","A")
3

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

=LASTROW("Sheet1","A")
4

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

=LASTROW("Sheet1","A")
5

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 32

Trả về một mảng các bản vẽ trên trang tính.

=LASTROW("Sheet1","A")
6
=LASTROW("Sheet1","A")
7

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.
Ủy quyềnCác tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
=max(arrayformula(if(A:A<>"",row(A:A),"")))
34
Trả về bộ lọc trong bảng này hoặc
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
49 nếu không có bộ lọc.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
35 - Bộ lọc.

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
33 - Danh sách các bản vẽ trên bảng này.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 67

Trả về phạm vi với ô trên cùng bên trái tại tọa độ đã cho.

=LASTROW("Sheet1","A")
8

Thông số

TênLoại hìnhSự mô tả
=INDIRECT("A"&LASTROW())
41
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.
=INDIRECT("A"&LASTROW())
43
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.

=INDIRECT("A"&LASTROW())
43

Chỉ số cột của ô để trả về; Lập chỉ mục cột bắt đầu với 1.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96 - Một phạm vi chỉ chứa tế bào này.

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 67

Trả về phạm vi với ô trên cùng bên trái tại tọa độ đã cho.

=LASTROW("Sheet1","A")
9

Thông số

TênLoại hìnhSự mô tả
=INDIRECT("A"&LASTROW())
41
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.
=INDIRECT("A"&LASTROW())
43
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.
=INDIRECT("A"&LASTROW())
43
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.

=INDIRECT("A"&LASTROW())
43

Chỉ số cột của ô để trả về; Lập chỉ mục cột bắt đầu với 1.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96 - Một phạm vi chỉ chứa tế bào này.

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=LASTROW("Sheet1")
0

Thông số

TênLoại hìnhSự mô tả
=INDIRECT("A"&LASTROW())
41
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.
=INDIRECT("A"&LASTROW())
43
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.
=INDIRECT("A"&LASTROW())
43
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.
=INDIRECT("A"&LASTROW())
43
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.

=INDIRECT("A"&LASTROW())
43

Chỉ số cột của ô để trả về; Lập chỉ mục cột bắt đầu với 1.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96 - Một phạm vi chỉ chứa tế bào này.

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=LASTROW("Sheet1")
1

Thông số

TênLoại hìnhSự mô tả
=INDIRECT("A"&LASTROW())
41
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.

=INDIRECT("A"&LASTROW())
43

Chỉ số cột của ô để trả về; Lập chỉ mục cột bắt đầu với 1.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96 - Một phạm vi chỉ chứa tế bào này.

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=LASTROW("Sheet1")
2

Thông số

TênLoại hìnhSự mô tả
=INDIRECT("A"&LASTROW())
41
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.

=INDIRECT("A"&LASTROW())
43

Chỉ số cột của ô để trả về; Lập chỉ mục cột bắt đầu với 1.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96 - Một phạm vi chỉ chứa tế bào này.

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=LASTROW("Sheet1")
3

Thông số

TênLoại hìnhSự mô tả
=INDIRECT("A"&LASTROW())
41
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.
=INDIRECT("A"&LASTROW())
43
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.

=INDIRECT("A"&LASTROW())
43

Chỉ số cột của ô để trả về; Lập chỉ mục cột bắt đầu với 1.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96 - Một phạm vi chỉ chứa tế bào này.

  • =LASTROW()
    
    63
  • Ủy quyền


Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=max(arrayformula(if(A:A<>"",row(A:A),"")))
69

=LASTROW("Sheet1")
4

=INDIRECT("A"&LASTROW())
43

Chỉ số cột của ô để trả về; Lập chỉ mục cột bắt đầu với 1.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96 - Một phạm vi chỉ chứa tế bào này.

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=max(arrayformula(if(A:A<>"",row(A:A),"")))
69

=LASTROW("Sheet1")
5

Thông số

TênLoại hìnhSự mô tả
=INDIRECT("A"&LASTROW())
41
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.

=INDIRECT("A"&LASTROW())
43

Chỉ số cột của ô để trả về; Lập chỉ mục cột bắt đầu với 1.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96 - Một phạm vi chỉ chứa tế bào này.

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=LASTROW("Sheet1")
6

Thông số

TênLoại hìnhSự mô tả
=INDIRECT("A"&LASTROW())
41
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số hàng của ô để trả về; Lập chỉ mục hàng bắt đầu với 1.

=INDIRECT("A"&LASTROW())
43

Chỉ số cột của ô để trả về; Lập chỉ mục cột bắt đầu với 1.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96 - Một phạm vi chỉ chứa tế bào này.

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=LASTROW("Sheet1")
7

=INDIRECT("A"&LASTROW())
43

Chỉ số cột của ô để trả về; Lập chỉ mục cột bắt đầu với 1.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96 - Một phạm vi chỉ chứa tế bào này.

  • Ủy quyền
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 90

Trả về ID của trang tính được biểu thị bởi đối tượng này.

Đây là một ID cho trang tính duy nhất cho bảng tính. ID là một số nguyên tăng đơn điệu được gán tại thời gian tạo tờ độc lập với vị trí trang tính. Điều này rất hữu ích khi kết hợp với các phương thức như

return sheet.getRange(column + final).getValue();
16 có tham số
return sheet.getRange(column + final).getValue();
17 chứ không phải là một ví dụ
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34.

=LASTROW("Sheet1")
8

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
13 - ID cho trang tính duy nhất cho bảng tính

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 92

Trả về tên trang tính.

=LASTROW("Sheet1")
9

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
13 - ID cho trang tính duy nhất cho bảng tính

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 92

Trả về tên trang tính.

=max(arrayformula(if(A:A<>"",row(A:A),"")))
38 - tên của tờ

=max(arrayformula(if(A:A<>"",row(A:A),"")))
94

Trả về lưới hình chữ nhật của các giá trị cho phạm vi này bắt đầu từ các tọa độ đã cho. Giá trị -1 được đưa ra dưới dạng vị trí hàng hoặc cột tương đương với việc có được hàng hoặc cột cuối cùng có dữ liệu trong trang tính.
=INDIRECT("A"&LASTROW())
0
Thông số
TênLoại hìnhSự mô tả
=LASTROW()
87
Loại hìnhSự mô tả
=LASTROW()
87
Loại hìnhSự mô tả
=LASTROW()
87
Loại hìnhSự mô tả

Trở về

=LASTROW()
87

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 92

Trả về tên trang tính.

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
38 - tên của tờ

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 92

Trả về tên trang tính.

=INDIRECT("A"&LASTROW())
1

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
38 - tên của tờ

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 92

Trả về tên trang tính.

=max(arrayformula(if(A:A<>"",row(A:A),"")))
38 - tên của tờ

=INDIRECT("A"&LASTROW())
2

Trở về

=max(arrayformula(if(A:A<>"",row(A:A),"")))
94

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64



=max(arrayformula(if(A:A<>"",row(A:A),""))) 92

Trả về tên trang tính.

=INDIRECT("A"&LASTROW())
3

=max(arrayformula(if(A:A<>"",row(A:A),"")))
94

Trả về lưới hình chữ nhật của các giá trị cho phạm vi này bắt đầu từ các tọa độ đã cho. Giá trị -1 được đưa ra dưới dạng vị trí hàng hoặc cột tương đương với việc có được hàng hoặc cột cuối cùng có dữ liệu trong trang tính.
=INDIRECT("A"&LASTROW())
0
Thông số
TênLoại hìnhSự mô tả

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=max(arrayformula(if(A:A<>"",row(A:A),""))) 92

Trả về tên trang tính.

=max(arrayformula(if(A:A<>"",row(A:A),"")))
38 - tên của tờ

=max(arrayformula(if(A:A<>"",row(A:A),"")))
94

=INDIRECT("A"&LASTROW())
4

=max(arrayformula(if(A:A<>"",row(A:A),"")))
94

Trả về lưới hình chữ nhật của các giá trị cho phạm vi này bắt đầu từ các tọa độ đã cho. Giá trị -1 được đưa ra dưới dạng vị trí hàng hoặc cột tương đương với việc có được hàng hoặc cột cuối cùng có dữ liệu trong trang tính.
=INDIRECT("A"&LASTROW())
0
Thông số
TênLoại hìnhSự mô tả

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=LASTROW() 87

=max(arrayformula(if(A:A<>"",row(A:A),"")))
13

=INDIRECT("A"&LASTROW())
5

=max(arrayformula(if(A:A<>"",row(A:A),"")))
94

Trả về lưới hình chữ nhật của các giá trị cho phạm vi này bắt đầu từ các tọa độ đã cho. Giá trị -1 được đưa ra dưới dạng vị trí hàng hoặc cột tương đương với việc có được hàng hoặc cột cuối cùng có dữ liệu trong trang tính.
=INDIRECT("A"&LASTROW())
0
Thông số
TênLoại hìnhSự mô tả
=LASTROW()
87
Loại hìnhSự mô tả

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=LASTROW() 87

=max(arrayformula(if(A:A<>"",row(A:A),"")))
13

Vị trí của hàng bắt đầu.

=max(arrayformula(if(A:A<>"",row(A:A),"")))
94

Trả về lưới hình chữ nhật của các giá trị cho phạm vi này bắt đầu từ các tọa độ đã cho. Giá trị -1 được đưa ra dưới dạng vị trí hàng hoặc cột tương đương với việc có được hàng hoặc cột cuối cùng có dữ liệu trong trang tính.
=INDIRECT("A"&LASTROW())
0
Thông số
TênLoại hìnhSự mô tả

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=LASTROW() 87

=max(arrayformula(if(A:A<>"",row(A:A),"")))
13

=INDIRECT("A"&LASTROW())
7

=max(arrayformula(if(A:A<>"",row(A:A),"")))
94

Trả về lưới hình chữ nhật của các giá trị cho phạm vi này bắt đầu từ các tọa độ đã cho. Giá trị -1 được đưa ra dưới dạng vị trí hàng hoặc cột tương đương với việc có được hàng hoặc cột cuối cùng có dữ liệu trong trang tính.
=INDIRECT("A"&LASTROW())
0
Thông số
TênLoại hìnhSự mô tả

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=LASTROW() 87

=max(arrayformula(if(A:A<>"",row(A:A),"")))
13

=INDIRECT("A"&LASTROW())
8

=max(arrayformula(if(A:A<>"",row(A:A),"")))
94

Trả về lưới hình chữ nhật của các giá trị cho phạm vi này bắt đầu từ các tọa độ đã cho. Giá trị -1 được đưa ra dưới dạng vị trí hàng hoặc cột tương đương với việc có được hàng hoặc cột cuối cùng có dữ liệu trong trang tính.
=INDIRECT("A"&LASTROW())
0
Thông số
TênLoại hìnhSự mô tả
=LASTROW()
87
Loại hìnhSự mô tả

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


=LASTROW() 87

=max(arrayformula(if(A:A<>"",row(A:A),"")))
13

=INDIRECT("A"&LASTROW())
9

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ hiện tại.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 21

Thêm một biểu đồ mới vào bảng này.

return sheet.getRange(column + final).getValue();
0

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + final).getValue();
96
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 21

Thêm một biểu đồ mới vào bảng này.

return sheet.getRange(column + final).getValue();
1

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + final).getValue();
96
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.

Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 21

Thêm một biểu đồ mới vào bảng này.

return sheet.getRange(column + final).getValue();
2

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + final).getValue();
96
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.

Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 21

Thêm một biểu đồ mới vào bảng này.

return sheet.getRange(column + final).getValue();
3

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + final).getValue();
96
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 21

Thêm một biểu đồ mới vào bảng này.

return sheet.getRange(column + final).getValue();
4

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + final).getValue();
96
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 23

Chèn một cột sau vị trí cột đã cho.

return sheet.getRange(column + final).getValue();
5

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + final).getValue();
96
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.

Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Chèn một cột sau vị trí cột đã cho.

return sheet.getRange(column + lastRow).getValue();
01

return sheet.getRange(column + final).getValue();
6

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + final).getValue();
96
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.

Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Chèn một cột sau vị trí cột đã cho.

return sheet.getRange(column + lastRow).getValue();
01

return sheet.getRange(column + final).getValue();
7

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + final).getValue();
96
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.

Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Chèn một cột sau vị trí cột đã cho.

return sheet.getRange(column + lastRow).getValue();
01

return sheet.getRange(column + final).getValue();
8

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + final).getValue();
96
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.

Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Chèn một cột sau vị trí cột đã cho.

return sheet.getRange(column + lastRow).getValue();
01

return sheet.getRange(column + final).getValue();
9

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + final).getValue();
96
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23
return sheet.getRange(column + final).getValue();
50
Biểu đồ để chèn.

Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
23

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Chèn một cột sau vị trí cột đã cho.

Chèn một hình ảnh trong tài liệu ở một hàng và cột đã cho, với phần bù pixel.

return sheet.getRange(column + lastRow).getValue();
0

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + lastRow).getValue();
67
=max(arrayformula(if(A:A<>"",row(A:A),"")))
38
URL cho hình ảnh.
=INDIRECT("A"&LASTROW())
43
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí cột.
=INDIRECT("A"&LASTROW())
41
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí cột.
=INDIRECT("A"&LASTROW())
41
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí cột.
=INDIRECT("A"&LASTROW())
41
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí cột.

=INDIRECT("A"&LASTROW())
41

Vị trí hàng.

return sheet.getRange(column + lastRow).getValue();
59

Độ lệch ngang từ góc ô trong pixel.

  • return sheet.getRange(column + lastRow).getValue();
    
    61
  • Độ lệch dọc từ góc ô trong pixel.


Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36 - Hình ảnh được chèn.

return sheet.getRange(column + lastRow).getValue();
1

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + lastRow).getValue();
67
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí cột.

=INDIRECT("A"&LASTROW())
41

Vị trí hàng.

return sheet.getRange(column + lastRow).getValue();
59

Độ lệch ngang từ góc ô trong pixel.

  • return sheet.getRange(column + lastRow).getValue();
    
    61
  • Độ lệch dọc từ góc ô trong pixel.


Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36 - Hình ảnh được chèn.

return sheet.getRange(column + lastRow).getValue();
2

Thông số

TênLoại hìnhSự mô tả
Ủy quyền
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí cột.

=INDIRECT("A"&LASTROW())
41

Vị trí hàng.

return sheet.getRange(column + lastRow).getValue();
59

Độ lệch ngang từ góc ô trong pixel.

  • return sheet.getRange(column + lastRow).getValue();
    
    61
  • Độ lệch dọc từ góc ô trong pixel.


Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36 - Hình ảnh được chèn.

return sheet.getRange(column + lastRow).getValue();
3

Thông số

TênLoại hìnhSự mô tả
Ủy quyền
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí cột.

return sheet.getRange(column + lastRow).getValue();
59

Độ lệch ngang từ góc ô trong pixel.

  • return sheet.getRange(column + lastRow).getValue();
    
    61
  • Độ lệch dọc từ góc ô trong pixel.


Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36 - Hình ảnh được chèn.

return sheet.getRange(column + lastRow).getValue();
4

Thông số

TênLoại hìnhSự mô tả
Ủy quyền
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí cột.
=INDIRECT("A"&LASTROW())
41
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí cột.

return sheet.getRange(column + lastRow).getValue();
59

Độ lệch ngang từ góc ô trong pixel.

  • return sheet.getRange(column + lastRow).getValue();
    
    61
  • Độ lệch dọc từ góc ô trong pixel.


Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36 - Hình ảnh được chèn.

return sheet.getRange(column + lastRow).getValue();
5

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + lastRow).getValue();
67
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
=max(arrayformula(if(A:A<>"",row(A:A),"")))
38
URL cho hình ảnh.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí cột.

=INDIRECT("A"&LASTROW())
41

Vị trí hàng.

return sheet.getRange(column + lastRow).getValue();
59

Độ lệch ngang từ góc ô trong pixel.

  • return sheet.getRange(column + lastRow).getValue();
    
    61
  • Độ lệch dọc từ góc ô trong pixel.


Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36 - Hình ảnh được chèn.

return sheet.getRange(column + lastRow).getValue();
6

Thông số

TênLoại hìnhSự mô tả
Ủy quyền
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
URL cho hình ảnh.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí cột.

=INDIRECT("A"&LASTROW())
41

Vị trí hàng.

return sheet.getRange(column + lastRow).getValue();
59

Độ lệch ngang từ góc ô trong pixel.

  • return sheet.getRange(column + lastRow).getValue();
    
    61
  • Độ lệch dọc từ góc ô trong pixel.


Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36 - Hình ảnh được chèn.

Thông số

TênLoại hìnhSự mô tả
Ủy quyềnCác tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
=LASTROW()
63
=LASTROW()
64
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
45
Chèn một hàng sau vị trí hàng đã cho.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
return sheet.getRange(column + lastRow).getValue();
01

=INDIRECT("A"&LASTROW())
41

Vị trí hàng.

return sheet.getRange(column + lastRow).getValue();
59

Độ lệch ngang từ góc ô trong pixel.

  • return sheet.getRange(column + lastRow).getValue();
    
    61
  • Độ lệch dọc từ góc ô trong pixel.


Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36 - Hình ảnh được chèn.

Thông số

TênLoại hìnhSự mô tả
Ủy quyềnCác tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
=LASTROW()
63
=LASTROW()
64
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
45
Chèn một hàng sau vị trí hàng đã cho.
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
return sheet.getRange(column + lastRow).getValue();
01
=INDIRECT("A"&LASTROW())
41
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí cột.
=INDIRECT("A"&LASTROW())
41
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí cột.

=INDIRECT("A"&LASTROW())
41

Vị trí hàng.

return sheet.getRange(column + lastRow).getValue();
59

Độ lệch ngang từ góc ô trong pixel.

  • return sheet.getRange(column + lastRow).getValue();
    
    61
  • Độ lệch dọc từ góc ô trong pixel.



Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36 - Hình ảnh được chèn.

=INDIRECT("A"&LASTROW())
41

Vị trí hàng.

return sheet.getRange(column + lastRow).getValue();
59

Độ lệch ngang từ góc ô trong pixel.

  • return sheet.getRange(column + lastRow).getValue();
    
    61
  • Độ lệch dọc từ góc ô trong pixel.





Trở về

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
36 - Hình ảnh được chèn.

return sheet.getRange(column + lastRow).getValue();
7

Thông số

TênLoại hìnhSự mô tả
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
064
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96
Một phạm vi trải dài các cột nên được di chuyển.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
75
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số mà các cột nên được chuyển đến. Lưu ý rằng chỉ mục này dựa trên tọa độ trước khi các cột được di chuyển. Dữ liệu hiện tại được thay đổi ngay để nhường chỗ cho các cột di chuyển trong khi các cột nguồn được xóa khỏi lưới. Do đó, dữ liệu có thể kết thúc ở một chỉ số khác với quy định ban đầu.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 76

Di chuyển các hàng được chọn theo phạm vi đã cho đến vị trí được chỉ định bởi

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
75. Bản thân
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
073 không phải đại diện chính xác cho toàn bộ hàng hoặc nhóm hàng để di chuyển, nó chọn tất cả các hàng mà phạm vi kéo dài.

return sheet.getRange(column + lastRow).getValue();
8

Thông số

TênLoại hìnhSự mô tả
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
064
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96
Một phạm vi trải dài các cột nên được di chuyển.
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
75
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Chỉ số mà các cột nên được chuyển đến. Lưu ý rằng chỉ mục này dựa trên tọa độ trước khi các cột được di chuyển. Dữ liệu hiện tại được thay đổi ngay để nhường chỗ cho các cột di chuyển trong khi các cột nguồn được xóa khỏi lưới. Do đó, dữ liệu có thể kết thúc ở một chỉ số khác với quy định ban đầu.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 76

Di chuyển các hàng được chọn theo phạm vi đã cho đến vị trí được chỉ định bởi

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
75. Bản thân
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
073 không phải đại diện chính xác cho toàn bộ hàng hoặc nhóm hàng để di chuyển, nó chọn tất cả các hàng mà phạm vi kéo dài.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
073

return sheet.getRange(column + lastRow).getValue();
9

Một phạm vi kéo dài các hàng nên được di chuyển.

Chỉ số mà các hàng nên được chuyển đến. Lưu ý rằng chỉ mục này dựa trên tọa độ trước khi các hàng được di chuyển. Dữ liệu hiện tại được dịch chuyển xuống để nhường chỗ cho các hàng di chuyển trong khi các hàng nguồn được xóa khỏi lưới. Do đó, dữ liệu có thể kết thúc ở một chỉ số khác với quy định ban đầu.


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 79

Trả về một người xây dựng để tạo một biểu đồ mới cho bảng này.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
00

Một phạm vi kéo dài các hàng nên được di chuyển.

Chỉ số mà các hàng nên được chuyển đến. Lưu ý rằng chỉ mục này dựa trên tọa độ trước khi các hàng được di chuyển. Dữ liệu hiện tại được dịch chuyển xuống để nhường chỗ cho các hàng di chuyển trong khi các hàng nguồn được xóa khỏi lưới. Do đó, dữ liệu có thể kết thúc ở một chỉ số khác với quy định ban đầu.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 76

Di chuyển các hàng được chọn theo phạm vi đã cho đến vị trí được chỉ định bởi

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
75. Bản thân
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
073 không phải đại diện chính xác cho toàn bộ hàng hoặc nhóm hàng để di chuyển, nó chọn tất cả các hàng mà phạm vi kéo dài.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
01

Thông số

TênLoại hìnhSự mô tả
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
064
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96
Một phạm vi trải dài các cột nên được di chuyển.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 76

Di chuyển các hàng được chọn theo phạm vi đã cho đến vị trí được chỉ định bởi

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
75. Bản thân
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
073 không phải đại diện chính xác cho toàn bộ hàng hoặc nhóm hàng để di chuyển, nó chọn tất cả các hàng mà phạm vi kéo dài.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
02

Thông số

TênLoại hìnhSự mô tả
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
064
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96
Một phạm vi trải dài các cột nên được di chuyển.

Một phạm vi kéo dài các hàng nên được di chuyển.

Chỉ số mà các hàng nên được chuyển đến. Lưu ý rằng chỉ mục này dựa trên tọa độ trước khi các hàng được di chuyển. Dữ liệu hiện tại được dịch chuyển xuống để nhường chỗ cho các hàng di chuyển trong khi các hàng nguồn được xóa khỏi lưới. Do đó, dữ liệu có thể kết thúc ở một chỉ số khác với quy định ban đầu.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 76

Di chuyển các hàng được chọn theo phạm vi đã cho đến vị trí được chỉ định bởi

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
75. Bản thân
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
073 không phải đại diện chính xác cho toàn bộ hàng hoặc nhóm hàng để di chuyển, nó chọn tất cả các hàng mà phạm vi kéo dài.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
03

Thông số

TênLoại hìnhSự mô tả
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
073
Một phạm vi kéo dài các hàng nên được di chuyển.Chỉ số mà các hàng nên được chuyển đến. Lưu ý rằng chỉ mục này dựa trên tọa độ trước khi các hàng được di chuyển. Dữ liệu hiện tại được dịch chuyển xuống để nhường chỗ cho các hàng di chuyển trong khi các hàng nguồn được xóa khỏi lưới. Do đó, dữ liệu có thể kết thúc ở một chỉ số khác với quy định ban đầu.

Một phạm vi kéo dài các hàng nên được di chuyển.

Chỉ số mà các hàng nên được chuyển đến. Lưu ý rằng chỉ mục này dựa trên tọa độ trước khi các hàng được di chuyển. Dữ liệu hiện tại được dịch chuyển xuống để nhường chỗ cho các hàng di chuyển trong khi các hàng nguồn được xóa khỏi lưới. Do đó, dữ liệu có thể kết thúc ở một chỉ số khác với quy định ban đầu.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 76

Di chuyển các hàng được chọn theo phạm vi đã cho đến vị trí được chỉ định bởi

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
75. Bản thân
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
073 không phải đại diện chính xác cho toàn bộ hàng hoặc nhóm hàng để di chuyển, nó chọn tất cả các hàng mà phạm vi kéo dài.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
04

Thông số

TênLoại hìnhSự mô tả
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
064
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96
Một phạm vi trải dài các cột nên được di chuyển.

Một phạm vi kéo dài các hàng nên được di chuyển.

Chỉ số mà các hàng nên được chuyển đến. Lưu ý rằng chỉ mục này dựa trên tọa độ trước khi các hàng được di chuyển. Dữ liệu hiện tại được dịch chuyển xuống để nhường chỗ cho các hàng di chuyển trong khi các hàng nguồn được xóa khỏi lưới. Do đó, dữ liệu có thể kết thúc ở một chỉ số khác với quy định ban đầu.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 76

Di chuyển các hàng được chọn theo phạm vi đã cho đến vị trí được chỉ định bởi

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
75. Bản thân
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
073 không phải đại diện chính xác cho toàn bộ hàng hoặc nhóm hàng để di chuyển, nó chọn tất cả các hàng mà phạm vi kéo dài.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
05

Thông số

TênLoại hìnhSự mô tả
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
073
Một phạm vi kéo dài các hàng nên được di chuyển.Chỉ số mà các hàng nên được chuyển đến. Lưu ý rằng chỉ mục này dựa trên tọa độ trước khi các hàng được di chuyển. Dữ liệu hiện tại được dịch chuyển xuống để nhường chỗ cho các hàng di chuyển trong khi các hàng nguồn được xóa khỏi lưới. Do đó, dữ liệu có thể kết thúc ở một chỉ số khác với quy định ban đầu.

Một phạm vi kéo dài các hàng nên được di chuyển.

Chỉ số mà các hàng nên được chuyển đến. Lưu ý rằng chỉ mục này dựa trên tọa độ trước khi các hàng được di chuyển. Dữ liệu hiện tại được dịch chuyển xuống để nhường chỗ cho các hàng di chuyển trong khi các hàng nguồn được xóa khỏi lưới. Do đó, dữ liệu có thể kết thúc ở một chỉ số khác với quy định ban đầu.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 76

Di chuyển các hàng được chọn theo phạm vi đã cho đến vị trí được chỉ định bởi

function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
75. Bản thân
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
073 không phải đại diện chính xác cho toàn bộ hàng hoặc nhóm hàng để di chuyển, nó chọn tất cả các hàng mà phạm vi kéo dài.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
06

Thông số

TênLoại hìnhSự mô tả
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
073
Một phạm vi kéo dài các hàng nên được di chuyển.Chỉ số mà các hàng nên được chuyển đến. Lưu ý rằng chỉ mục này dựa trên tọa độ trước khi các hàng được di chuyển. Dữ liệu hiện tại được dịch chuyển xuống để nhường chỗ cho các hàng di chuyển trong khi các hàng nguồn được xóa khỏi lưới. Do đó, dữ liệu có thể kết thúc ở một chỉ số khác với quy định ban đầu.

Một phạm vi kéo dài các hàng nên được di chuyển.

Chỉ số mà các hàng nên được chuyển đến. Lưu ý rằng chỉ mục này dựa trên tọa độ trước khi các hàng được di chuyển. Dữ liệu hiện tại được dịch chuyển xuống để nhường chỗ cho các hàng di chuyển trong khi các hàng nguồn được xóa khỏi lưới. Do đó, dữ liệu có thể kết thúc ở một chỉ số khác với quy định ban đầu.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 98

Đặt chiều rộng của cột đã cho trong pixel.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
07

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
73
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
135
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
135

Chiều rộng tính bằng pixel để đặt nó thành.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ, hữu ích cho chuỗi phương pháp

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


function lastRow(sheet,column) { var ss = SpreadsheetApp.getActiveSpreadsheet(); if (column == null) { if (sheet != null) { var sheet = ss.getSheetByName(sheet); } else { var sheet = ss.getActiveSheet(); } return sheet.getLastRow(); } else { var sheet = ss.getSheetByName(sheet); var lastRow = sheet.getLastRow(); var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues(); for (i=0;i<array.length;i++) { if (array[i] != '') { var final = i + 1; } } if (final != null) { return final; } else { return 0; } } } 98

Đặt chiều rộng của cột đã cho trong pixel.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
08

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
73
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
135
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
135
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
135

Chiều rộng tính bằng pixel để đặt nó thành.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ, hữu ích cho chuỗi phương pháp

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
09

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
73
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ, hữu ích cho chuỗi phương pháp

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=LASTROW()
00

Đặt chiều rộng của các cột đã cho trong pixel.

=LASTROW()
79The specified
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
96 must consist of one cell, otherwise it throws an exception.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
10

Vị trí cột bắt đầu để thay đổi.

TênLoại hìnhSự mô tả
=LASTROW()
73
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
135

Chiều rộng tính bằng pixel để đặt nó thành.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ, hữu ích cho chuỗi phương pháp

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
11

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
73
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ, hữu ích cho chuỗi phương pháp

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
12

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
73
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ, hữu ích cho chuỗi phương pháp

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64



Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
13

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
73
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
135

Chiều rộng tính bằng pixel để đặt nó thành.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ, hữu ích cho chuỗi phương pháp

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
73
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
135

Chiều rộng tính bằng pixel để đặt nó thành.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ, hữu ích cho chuỗi phương pháp

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
14

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
73
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
135

Chiều rộng tính bằng pixel để đặt nó thành.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ, hữu ích cho chuỗi phương pháp

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
15

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
73
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
135
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
135

Chiều rộng tính bằng pixel để đặt nó thành.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Tờ, hữu ích cho chuỗi phương pháp

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
16

Thông số

TênLoại hìnhSự mô tả
=LASTROW()
73
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí của cột đã cho để đặt.
=LASTROW()
89
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Số lượng hàng để thay đổi.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
197
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Số lượng hàng để thay đổi.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
197

Chiều cao tính bằng pixel để đặt nó thành.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

  • Ủy quyền
  • Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:


=LASTROW() 63

=LASTROW()
64

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
17

=LASTROW()
23

Đặt chiều cao của các hàng đã cho trong pixel. Theo mặc định, các hàng phát triển để phù hợp với nội dung ô. Khi bạn sử dụng
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
214, các hàng buộc đến chiều cao được chỉ định ngay cả khi hàm lượng ô cao hơn chiều cao hàng.
Thông sốTên
Loại hình
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Sự mô tả
=LASTROW()
89
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Số lượng hàng để thay đổi.
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
197
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Số lượng hàng để thay đổi.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
197

Chiều cao tính bằng pixel để đặt nó thành.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

  • Ủy quyền
  • Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:


=LASTROW() 63

=LASTROW()
64

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
18

=LASTROW()
23

Đặt chiều cao của các hàng đã cho trong pixel. Theo mặc định, các hàng phát triển để phù hợp với nội dung ô. Khi bạn sử dụng
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
214, các hàng buộc đến chiều cao được chỉ định ngay cả khi hàm lượng ô cao hơn chiều cao hàng.
Thông sốTên
Loại hìnhSự mô tả
=LASTROW()
87

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
197

Chiều cao tính bằng pixel để đặt nó thành.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

  • Ủy quyền
  • Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:


=LASTROW() 63

=LASTROW()
64

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
19

=LASTROW()
23

Đặt chiều cao của các hàng đã cho trong pixel. Theo mặc định, các hàng phát triển để phù hợp với nội dung ô. Khi bạn sử dụng
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
214, các hàng buộc đến chiều cao được chỉ định ngay cả khi hàm lượng ô cao hơn chiều cao hàng.
Thông sốTên
Loại hìnhSự mô tả
=LASTROW()
87

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
197

Chiều cao tính bằng pixel để đặt nó thành.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

  • Ủy quyền
  • Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:


=LASTROW() 63

=LASTROW()
64

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
20

=LASTROW()
23

Đặt chiều cao của các hàng đã cho trong pixel. Theo mặc định, các hàng phát triển để phù hợp với nội dung ô. Khi bạn sử dụng
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
214, các hàng buộc đến chiều cao được chỉ định ngay cả khi hàm lượng ô cao hơn chiều cao hàng.
Thông sốTên
Loại hình
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Sự mô tả

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

  • Ủy quyền
  • Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:


=LASTROW() 63

=LASTROW()
64

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
21

=LASTROW()
23

Đặt chiều cao của các hàng đã cho trong pixel. Theo mặc định, các hàng phát triển để phù hợp với nội dung ô. Khi bạn sử dụng
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
214, các hàng buộc đến chiều cao được chỉ định ngay cả khi hàm lượng ô cao hơn chiều cao hàng.
Thông sốTên
Loại hình
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Sự mô tả
=LASTROW()
87
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Vị trí hàng đầu để thay đổi.

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

  • Ủy quyền
  • Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:


=LASTROW() 63

=LASTROW()
64

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
22

=LASTROW()
23

Đặt chiều cao của các hàng đã cho trong pixel. Theo mặc định, các hàng phát triển để phù hợp với nội dung ô. Khi bạn sử dụng
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
214, các hàng buộc đến chiều cao được chỉ định ngay cả khi hàm lượng ô cao hơn chiều cao hàng.
Thông sốTên
Loại hình
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Sự mô tả

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

  • Ủy quyền
  • Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:


=LASTROW() 63

=LASTROW()
64

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
23

=LASTROW()
23

Đặt chiều cao của các hàng đã cho trong pixel. Theo mặc định, các hàng phát triển để phù hợp với nội dung ô. Khi bạn sử dụng
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
214, các hàng buộc đến chiều cao được chỉ định ngay cả khi hàm lượng ô cao hơn chiều cao hàng.
Thông sốTên
Loại hình
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Sự mô tả
=LASTROW()
89
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
=LASTROW()
87

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

  • Ủy quyền
  • Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:


=LASTROW() 63

=LASTROW()
64

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
24

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
197

=LASTROW()
23

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

  • Ủy quyền
  • Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:


=LASTROW() 63

=LASTROW()
64

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
25

=LASTROW()
23

Đặt chiều cao của các hàng đã cho trong pixel. Theo mặc định, các hàng phát triển để phù hợp với nội dung ô. Khi bạn sử dụng
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
214, các hàng buộc đến chiều cao được chỉ định ngay cả khi hàm lượng ô cao hơn chiều cao hàng.
Thông sốTên
Loại hình
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Sự mô tả

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
197

=LASTROW()
87

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

  • Ủy quyền
  • Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:


Vị trí hàng đầu để thay đổi.

=LASTROW()
25

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
26

=LASTROW()
23

Đặt chiều cao của các hàng đã cho trong pixel. Theo mặc định, các hàng phát triển để phù hợp với nội dung ô. Khi bạn sử dụng
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
214, các hàng buộc đến chiều cao được chỉ định ngay cả khi hàm lượng ô cao hơn chiều cao hàng.
Thông sốTên
Loại hình
=max(arrayformula(if(A:A<>"",row(A:A),"")))
13
Sự mô tả
=LASTROW()
87
Vị trí hàng đầu để thay đổi.
=LASTROW()
25

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
197

=LASTROW()
87

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

  • Ủy quyền
  • Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:


Vị trí hàng đầu để thay đổi.

=LASTROW()
25

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
27

=LASTROW()
23

Đặt chiều cao của các hàng đã cho trong pixel. Theo mặc định, các hàng phát triển để phù hợp với nội dung ô. Khi bạn sử dụng
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
214, các hàng buộc đến chiều cao được chỉ định ngay cả khi hàm lượng ô cao hơn chiều cao hàng.
Thông sốTên
Loại hìnhSự mô tả
=LASTROW()
87

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

  • Ủy quyền
  • Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:


Vị trí hàng đầu để thay đổi.

=LASTROW()
25

Đặt màu tab Tab.

=LASTROW()
23

Đặt chiều cao của các hàng đã cho trong pixel. Theo mặc định, các hàng phát triển để phù hợp với nội dung ô. Khi bạn sử dụng
=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
214, các hàng buộc đến chiều cao được chỉ định ngay cả khi hàm lượng ô cao hơn chiều cao hàng.
Thông sốTên
Loại hìnhSự mô tả
=LASTROW()
87

Trở về

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
34 - Bảng này, để xâu chuỗi.

  • Ủy quyền
  • Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:


Vị trí hàng đầu để thay đổi.

=LASTROW()
25

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
29

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + final).getValue();
96
return sheet.getRange(column + final).getValue();
50
Biểu đồ để cập nhật.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64

Phương pháp không dùng nữa

=LASTROW() 49

Phản đối. Đối với bảng tính được tạo trong phiên bản mới hơn của Google Sheets, hãy sử dụng

=max(arrayformula(if(A:A<>"",row(A:A),"")))
65, trả về lớp
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
82 mạnh hơn. Mặc dù phương pháp này không được chấp nhận, nhưng nó vẫn có sẵn để tương thích với phiên bản cũ của tờ
For spreadsheets created in the newer version of Google Sheets, use
=max(arrayformula(if(A:A<>"",row(A:A),"")))
65, which returns the more powerful
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
82 class. Although this method is deprecated, it remains available for compatibility with the older version of Sheets

Trả về một thể hiện

=LASTROW()
50 mô tả các quyền cho bảng hiện tại.

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
30

Trở về

=LASTROW()
50 - Một đối tượng mô tả quyền truy cập bảng

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Phương pháp không dùng nữa

=LASTROW()
49 Replaced by
=max(arrayformula(if(A:A<>"",row(A:A),"")))
98

Phản đối. Đối với bảng tính được tạo trong phiên bản mới hơn của Google Sheets, hãy sử dụng

=max(arrayformula(if(A:A<>"",row(A:A),"")))
65, trả về lớp
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
82 mạnh hơn. Mặc dù phương pháp này không được chấp nhận, nhưng nó vẫn có sẵn để tương thích với phiên bản cũ của tờ

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
31

Trở về

=LASTROW()
50 - Một đối tượng mô tả quyền truy cập bảng

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64


Phương pháp không dùng nữa

=LASTROW()
49 For spreadsheets created in the newer version of Google Sheets, use
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
81, which returns the more powerful
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
82 class. Although this method is deprecated, it remains available for compatibility with the older version of Sheets

Phản đối. Đối với bảng tính được tạo trong phiên bản mới hơn của Google Sheets, hãy sử dụng

=max(arrayformula(if(A:A<>"",row(A:A),"")))
65, trả về lớp
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
82 mạnh hơn. Mặc dù phương pháp này không được chấp nhận, nhưng nó vẫn có sẵn để tương thích với phiên bản cũ của tờ

=DAYS360(A2,indirect("A"&max(arrayformula(if(A:A<>"",row(A:A),"")))))
32

Thông số

TênLoại hìnhSự mô tả
return sheet.getRange(column + final).getValue();
96
return sheet.getRange(column + final).getValue();
50
Biểu đồ để cập nhật.

Ủy quyền

Các tập lệnh sử dụng phương pháp này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

  • =LASTROW()
    
    63
  • =LASTROW()
    
    64

Phương pháp không dùng nữa

=LASTROW()
49

Phản đối. Đối với bảng tính được tạo trong phiên bản mới hơn của Google Sheets, hãy sử dụng

=max(arrayformula(if(A:A<>"",row(A:A),"")))
65, trả về lớp
function lastRow(sheet,column) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  if (column == null) {
    if (sheet != null) {
       var sheet = ss.getSheetByName(sheet);
    } else {
      var sheet = ss.getActiveSheet();
    }
    return sheet.getLastRow();
  } else {
    var sheet = ss.getSheetByName(sheet);
    var lastRow = sheet.getLastRow();
    var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
    for (i=0;i<array.length;i++) {
      if (array[i] != '') {       
        var final = i + 1;
      }
    }
    if (final != null) {
      return final;
    } else {
      return 0;
    }
  }
}
82 mạnh hơn. Mặc dù phương pháp này không được chấp nhận, nhưng nó vẫn có sẵn để tương thích với phiên bản cũ của tờ