R1C1形式を使用してGoogleスプレッドシートの列全体を参照することはできますか?


12

Google Spreadsheetsでは、A1表記を使用して列全体を参照することがよくあります。

A1:A

以下で説明する理由により、R1C1形式を使用して、次のような列全体を参照したいと思います。

R1C1:C1

ExcelでA1:Aを使用することはできません。そのため、R1C1表記はExcelに由来するため、R1C1表記でこれを行うことは考えられません。もしそうなら、それは私の人生を楽にするでしょう。

背景:スプレッドシートにアクセスして、別のスプレッドシートデータから情報を取得します。このデータは動的にフォーマットが変化します。

これを回避するには、データの現在のレイアウトに基づいて、数式を使用してセルにアドレスを生成します。次に、間接を使用して他の数式でこのアドレスセルを参照できます。また、A1よりもR1C1を使用してアドレスを生成する方がはるかに簡単です。


「ExcelでA1:Aを使用することはできないため」-「ExcelでR1C1を使用することはできないため」という意味ですか?
ヴィダールS.ラムダル

いいえ、範囲A1:AはGoogleドキュメントでのみ機能することを意味しました。Excelでは、範囲の終わりに行と列の両方を指定する必要があります。
s6mike

5
R2D2の表記を気にせずにR1C1表記を読むことはできません。
ソニーサントス

回答:


2

短い答え

はい、R1C1表記を使用して列全体を参照できます。 INDIRECT("C1",FALSE)

説明

Googleスプレッドシートには、参照表記をA1からR1C1に変更する機能は含まれていませんが、最後の機能はINDIRECT組み込み関数で使用できます。

1000行のシートでは、次の式は1000を返します

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

2
天才!ありがとう:)質問をしてからほぼ4年が経ちました。
s6mike

6

A1表記がサポートされるようになりました。列Aを中央に配置するには:

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

1
A1表記は常にサポートされていますが、私の質問では、R1C1表記を使用してGoogleスプレッドシートの列全体を参照できるかどうかを尋ねています。
s6mike

2

いいえ。ただし、COUNTA関数を使用して、列内のデータを含む最後の行を知ることで回避できます。

INDIRECT("A1:A") 次のように書くことができます INDIRECT("R1C1:R" & COUNTA(R1C1:R1000C1) & "C1")

賢明な「最大行」値を決定する必要があります。例では1000を使用しているため、この式は最大1000行のスプレッドシートで機能するはずです。

ルックアップするCOUNTAにはGoogleスプレッドシートの関数リスト


これが可能になりました(私の回答をご覧ください。これは、新しいGoogleスプレッドシートで導入された可能性があります。
Rubén16年

ああ、それは素晴らしい!
ヴィダールS.ラムダル

-1

許容される形式は、使用されている方法によって異なります。これは、例えば、説明は、R1C1表記を可能にするが、それは、入力または出力がR1C1表記であるか否か(少なくとも私に)不明です。

getRange(row, column, numRows, numColumns)代わりにの使用を採用することをお勧めします(公式ドキュメントはこちら)。使用目的の詳細に基づいて、これは目的に非常によく適合します。「行」パラメーターに変数を頻繁に使用して、ループ内の値の範囲全体を取得します。たとえば、getRange(row, 2, 1, 7)row = 3の場合、範囲が返されますC2:C8。次に、「行」をインクリメントして、次の範囲D2:D8を返します。


1
その列に指定された数のルートではなく、列全体を参照する方法の質問には答えていません。ループ内でgetRangeを繰り返し使用することは、必要でない限りお勧めしません。パフォーマンスと割り当ての問題が発生します。

1
getRangeメソッドで不明な点については、その出力は文字列ではなく範囲オブジェクトであるため、表記の問題はありません。表記は入力用に指定され、文字列です。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.