Cara membuka file Google Sheets dan langsung pergi ke akhir file

14

Saya memiliki Google Spreadsheet dengan 100 baris.

Setiap kali saya membuka file itu, saya ingin menyisipkan baris di ujung meja saya.

Bagaimana saya bisa melompat ke baris terakhir dari tabel ketika saya membuka dokumen?

Karena saat ini saya harus gulir ke bawah agar dapat memasukkan baris baru.

Kamu bisa melakukannya
sumber
1
Apakah kombinasi kunci sudah cukup? Ctrl + End akan mengarahkan Anda ke akhir file.
ale
1
@AlE .: Apakah Ctrl + End berpindah ke kolom terakhir juga? Saya tidak memiliki kotak Windows untuk diuji, tetapi pada Mac, pintasan yang sesuai (⌘ + Fn + ➔) bergerak ke baris terakhir, kolom terakhir.
Vidar S. Ramdal
@Vidar: Ya, mungkin. (Saya tidak memiliki kemampuan untuk mengujinya saat ini.) Cukup mudah diperbaiki dengan menekan Hometombol.
ale

Jawaban:

11

Anda dapat membuat pemicu yang berjalan setiap kali spreadsheet Anda dibuka.

Buka Alat → Editor skrip dan rekatkan yang berikut:

function onOpen(e) {
  var spreadsheet = e.source;
  var sheet = spreadsheet.getActiveSheet();
  var lastRow = spreadsheet.getLastRow();
  if (sheet.getMaxRows() == lastRow) {
    sheet.appendRow([""]);
  }
  lastRow = lastRow + 1;
  var range = sheet.getRange("A" + lastRow + ":A" + lastRow);
  sheet.setActiveRange(range);
}

Klik tombol Simpan , lalu tutup editor skrip, dan spreadsheet.

Sekarang, buka lagi spreadsheet Anda. Berikan beberapa detik, dan Anda akan melihat bahwa baris baru dimasukkan di akhir lembar Anda, dan bahwa baris itu dipilih.

Saya telah membuat spreadsheet ini untuk diperagakan - jangan ragu untuk menyalinnya (klik File → Salin ). Anda harus menjalankan salinan Anda sendiri agar skrip berjalan dengan sukses.

Script menjelaskan:

Nama onOpenfungsi memiliki arti khusus. Lihat dokumentasi . Dibutuhkan satu argumen, satu Eventobjek . Its sourceproperti adalah referensi ke spreadsheet dibuka. Dengan spreadsheet, kita dapat melakukan getLastRow()untuk menemukan indeks dari baris terakhir yang memiliki konten . getMaxRows()memberi kami jumlah maksimum baris dalam lembar, bahkan yang kosong. Dengan pengetahuan itu, kita dapat melihat apakah baris terakhir memiliki konten - jika demikian, kami menambahkan baris baru yang kosong. Akhirnya, kita dapat membuat rentang dan memanggilnya setActiveRange, untuk pindah ke baris terakhir.


Jika Anda hanya ingin pindah ke baris terakhir, tidak memasukkan apa pun, skrip dapat disederhanakan karena ini:

function onOpen(e) {
  var spreadsheet = e.source;
  var sheet = spreadsheet.getActiveSheet();
  var lastRow = spreadsheet.getLastRow();
  var range = sheet.getRange("A" + lastRow + ":A" + lastRow);
  sheet.setActiveRange(range);
}
Vidar S. Ramdal
sumber
terima kasih banyak atas bantuan anda! Saya akan coba ini nanti. Terima kasih atas waktu dan bantuan Anda
UcanDoIt
1
ini jangan pergi untuk baris terakhir dengan teks, seperti yang saya inginkan. :( ia berlaku untuk baris terakhir yang memiliki rumus.
UcanDoIt
1
dapatkah Anda membantu saya untuk baris terakhir dengan teks?
UcanDoIt
1
ok saya sedang bekerja dan tidak memiliki akses ke Google di sini, tetapi akan membuatnya nanti .. Akan coba sekarang dengan kata-kata ... Dalam spreadsheet saya, saya memiliki rumus, dalam kolom, hingga baris 1000. Dan saya sudah memasukkan data hingga baris 200 (hanya). Jadi dengan solusi Anda ketika saya membuka dokumen itu pergi ke baris 1000, dan saya ingin pergi ke baris 200 sehingga saya bisa memasukkan data baru di baris berikutnya yang tersedia.
UcanDoIt
1
@ Hamideh Tidak ada peristiwa yang dipicu saat beralih antar lembar dalam dokumen yang sama, seperti yang saya ketahui. Jadi pendekatan ini tidak akan berhasil dalam kasus itu.
Vidar S. Ramdal
3

Jika Anda memiliki masalah tambahan bahwa kolom tertentu diisi dengan rumus sepenuhnya, dan Anda ingin menggulir ke baris pertama yang memiliki data non-rumus, berikut adalah pendekatannya. Dalam hal ini kolom A memiliki formula sepenuhnya, jadi saya gulir ke sel kosong pertama di kolom B di baris 5 atau di bawah.

function onOpen(e) {
    var spreadsheet = e.source;
    var sheet = spreadsheet.getActiveSheet();
    var row = 5;
    while (true) {
        var range = sheet.getRange("B" + row);
        if (!range.getValue()) {
            sheet.setActiveRange(range);
            return;
        }
        row++;
    }
}

Seperti yang ditunjukkan jawaban lain, Anda harus membuka Alat → Editor skrip , rekatkan pada fungsi itu, beri nama "proyek" Anda, simpan, dan muat ulang spreadsheet.

Robert Tupelo-Schneck
sumber