Di Google Spreadsheets saya sering menggunakan notasi A1 untuk merujuk ke seluruh kolom:
A1:A
Untuk alasan yang saya jelaskan di bawah, saya ingin menggunakan format R1C1, untuk merujuk ke seluruh kolom, seperti:
R1C1:C1
Tidak mungkin menggunakan A1: A di Excel, jadi karena notasi R1C1 berasal dari Excel, sepertinya tidak mungkin melakukan hal ini dalam notasi R1C1. Jika ya, itu akan membuat hidup saya lebih mudah.
Latar Belakang: Saya memiliki kunjungan spreadsheet, yang menarik informasi dari data spreadsheet lain, yang memiliki format yang berubah secara dinamis.
Untuk menyiasatinya, saya menggunakan rumus untuk menghasilkan alamat di sel, berdasarkan tata letak data saat ini. Saya kemudian bisa mereferensikan sel alamat ini dalam formula lain menggunakan tidak langsung. Dan jauh lebih mudah untuk menghasilkan alamat menggunakan R1C1 daripada A1.
sumber
Jawaban:
Jawaban singkat
Ya, mungkin untuk merujuk seluruh kolom menggunakan notasi R1C1: Gunakan
INDIRECT("C1",FALSE)
Penjelasan
Google Sheets tidak menyertakan fitur untuk mengubah notasi referensi dari A1 ke R1C1 tetapi yang terakhir dapat digunakan dengan fungsi bawaan INDIRECT .
Contoh
Dalam lembar yang memiliki 1000 baris, rumus berikut akan mengembalikan 1000
sumber
Notasi A1 didukung sekarang. Untuk memusatkan kolom A:
sumber
Tidak, tetapi Anda bisa mengatasinya, dengan mengetahui baris mana yang merupakan baris terakhir dengan data dalam kolom, menggunakan
COUNTA
fungsi.INDIRECT("A1:A")
dapat dituliskan sesuatu sepertiINDIRECT("R1C1:R" & COUNTA(R1C1:R1000C1) & "C1")
Anda perlu menentukan nilai 'baris maksimum' yang masuk akal. Saya telah menggunakan 1000 dalam contoh, jadi rumus ini harus berfungsi dalam spreadsheet hingga 1000 baris.
Cari
COUNTA
di daftar fungsi Google Spreadsheets .sumber
Format yang dapat diterima bervariasi tergantung pada metode yang digunakan. Dalam yang ini , misalnya, deskripsi memungkinkan notasi R1C1, tetapi tidak jelas (setidaknya bagi saya) apakah input atau output adalah notasi R1C1.
Saya sarankan mengadopsi penggunaan
getRange(row, column, numRows, numColumns)
sebagai gantinya ( Dok resmi di sini ). Berdasarkan rincian yang diberikan tentang penggunaan yang Anda maksudkan, ini akan sesuai dengan tujuan Anda dengan cukup baik. Saya sering menggunakan variabel untuk parameter 'baris' untuk mengambil seluruh rentang nilai dalam satu lingkaran. misal, digetRange(row, 2, 1, 7)
mana baris = 3 akan mengembalikan rentangC2:C8
. Kemudian, cukup tambahkan 'baris' untuk mengembalikan kisaran D2: D8 berikutnya.sumber