R1C1 biçimini kullanarak Google E-Tablolar'daki bir sütuna başvurmak mümkün müdür?


12

Google E-Tablolar'da, tüm sütuna başvurmak için genellikle A1 gösterimini kullanırım:

A1:A

Aşağıda açıkladığım nedenlerden ötürü, R1C1 formatını kullanmak, aşağıdaki gibi bir sütuna başvurmak istiyorum:

R1C1:C1

Excel'de A1: A kullanmak mümkün değildir, bu nedenle R1C1 gösterimi Excel'den kaynaklandığından, bunu R1C1 gösterimlerinde yapmak mümkün görünmemektedir. Eğer öyleyse, hayatımı kolaylaştıracaktı.

Arka plan: Dinamik olarak değişen bir biçime sahip başka bir elektronik tablo verilerinden bilgi alan bir elektronik tablo ziyaretim var.

Bu sorunu çözmek için, geçerli veri düzenine dayalı olarak bir hücrede adres oluşturmak için bir formül kullanıyorum. Daha sonra bu adres hücresini dolaylı kullanarak diğer formüllerde başvurabilirim. R1C1 kullanarak adres oluşturmak A1'den çok daha kolaydır.


"A1: A'yı excel'de kullanmak mümkün olmadığından" - "R1C1'i excel'de kullanmak mümkün olmadığından mı?"
Vidar S. Ramdal

Hayır, yani A1: A aralığının yalnızca Google Dokümanlar'da çalıştığını kastediyorum - excel ile bir aralığın sonu için hem satır hem de sütun belirtmeniz gerekir.
s6mike

5
Bir R2D2 olanını merak etmeden R1C1 gösterimini okuyamıyorum.
Sony Santos

Yanıtlar:


3

Kısa cevap

Evet, R1C1 gösterimini kullanarak tüm bir sütuna başvurmak mümkündür: INDIRECT("C1",FALSE)

açıklama

Google E-Tablolar, referans gösterimini A1'den R1C1'e değiştiren bir özellik içermez, ancak sonuncusu INDIRECT yerleşik işleviyle kullanılabilir.

Misal

1000 satır içeren bir sayfada, aşağıdaki formül 1000 değerini döndürür

=ROWS(INDIRECT("C1",FALSE)) 

2
Genius! Teşekkürler :) Soruyu sorduğumdan bu yana neredeyse 4 yıl geçti, şimdi sorduğumda ne yaptığımı hatırlamam gerekiyor!
s6mike

6

A1 notasyonu artık desteklenmektedir. A sütununu ortalamak için:

SpreadsheetApp.getActiveSheet().getRange("A1:A").setHorizontalAlignment("center");

1
A1 gösterimi her zaman desteklenmiştir, ancak sorularım Google E-Tablolar'daki bir sütunun tamamını belirtmek için R1C1 gösterimini kullanmanın mümkün olup olmadığını soruyor.
15:15

2

Hayır, ancak COUNTAişlevini kullanarak bir sütundaki verilerle hangi satırın son satır olduğunu bilerek etrafında çalışabilirsiniz.

INDIRECT("A1:A") gibi bir şey yazılabilir INDIRECT("R1C1:R" & COUNTA(R1C1:R1000C1) & "C1")

Mantıklı bir 'maks. Satır' değeri belirlemeniz gerekir. Örnekte 1000 kullandım, bu yüzden bu formül 1000 satıra kadar bir e-tabloda çalışmalıdır.

Yukarı bak COUNTAyılında Google E fonksiyon listesinde .


Şimdi bu mümkün ( cevabımı görün . Belki bu yeni Google E-Tablolar'da tanıtıldı.
Rubén

Ah, bu harika!
Vidar S. Ramdal

-1

Kabul edilebilir biçim, kullanılan yönteme bağlı olarak değişir. Gelen bu bir örneğin, açıklama R1C1 gösteriminde sağlar, ancak giriş veya çıkış R1C1 notasyonu olup olmadığını (en azından benim için) belirsiz.

Bunun getRange(row, column, numRows, numColumns)yerine kullanımını kabul etmenizi öneririm ( Resmi doküman burada ). Kullanım amacınızın verilen ayrıntılarına dayanarak, bu amaçlarınıza oldukça uygun olacaktır. Ben sık sık bir döngüde bir dizi değer almak için 'row' parametresi için bir değişken kullanın. örneğin, getRange(row, 2, 1, 7)satır = 3 aralığı döndürür C2:C8. Ardından, sonraki D2: D8 aralığını döndürmek için 'satır'ı artırmanız yeterlidir.


1
Bu sütundaki belirli sayıda rota yerine, tüm sütuna nasıl başvuracağınız sorusunu yanıtlamıyorsunuz. Gerekmedikçe getRange'ın döngü içinde art arda kullanılması önerilmez, düşük performans ve kota sorunlarına yol açar.

1
GetRange yönteminde net olmayan şeylere gelince: çıktısı bir dize değil, bir aralık nesnesidir, bu nedenle bunun için bir gösterim sorusu yoktur. Gösterim, bir dize olan giriş için belirtilir.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.