外部ファイルにあるセルや、セル範囲名を参照する方法。
セルを参照する ¶
| 番 | 題 | コード例 |
|---|---|---|
| 1 | 単一セルを参照する | A1 |
| 2 | 複数セルを参照する | =A1+C3 |
| 3 | 単一セル範囲を参照する | =SUM(A1:B2) |
| 4 | 複数セル範囲を参照する | =SUM(A1:B2, D1:E2) |
| 5 | セル範囲名を定義する | `` |
| 6 | セル範囲名を参照する | =SUM(range_name) |
'URL'#$シート名.セル名 ¶
A1,$A$1A1:C3,$A$1:$C$3sheet1.A1sheet1.A1:C3'file:///tmp/a.ods'#sheet1.A1'file:///tmp/a.ods'#sheet1.A1:C3'file:///tmp/a.ods'#$sheet1.$A$1:$C$3'file:///tmp/a.ods'#RangeName'http://a.ods'#RangeName
セルを参照するコードのパターン。
1. 単一セルを参照する ¶
1-1. 同一ファイル同一シート単一セル ¶
- セル
A1に2を入力する - セル
B1に=A1を入力する - セル
B1の結果が2と表示される
絶対参照について。セルB1をC1などへコピーしたとき座標が自動でインクリメントされる。それを防ぐためには絶対参照=$A$1とする。なお、=$A1, =A$1のように行と列を個別に絶対・相対指定できる。
| コード | 列 | 行 |
|---|---|---|
A1 |
相 | 相 |
A$1 |
相 | 絶 |
$A1 |
絶 | 相 |
$A$1 |
絶 | 絶 |
1-2. 同一ファイル別シート ¶
sheet1- セル
A1に2を入力する
- セル
sheet2- セル
A1に=sheet1.A1を入力する - セル
A1の結果が2と表示される
- セル
1-3. 別ファイル別シート(ローカル) ¶
/tmp/a.odsファイルのsheet1- セル
A1に2を入力する
- セル
/tmp/b.odsファイルのsheet1- セル
A1に='file:///tmp/a.ods'#$sheet1.A1を入力する - セル
A1の結果が2と表示される
- セル
1-4. 別ファイル別シート(Web) ¶
http://a.odsファイルのsheet1- セル
A1に2を入力する
- セル
http://b.odsファイルのsheet1- セル
A1に='http://a.ods'#$sheet1.A1を入力する - セル
A1の結果が2と表示される
- セル
2. 複数セルを参照する ¶
- セル
A1に2を入力する - セル
C1に3を入力する - セル
E1に=A1+C1を入力する - セル
E1の結果が5と表示される
3. 単一セル範囲を参照する ¶
3-1. 同一ファイル同一シート ¶
- セル
A1に2を入力する - セル
B1に3を入力する - セル
C1に=SUM(A1:B1)を入力する - セル
C1の結果が5と表示される
3-2. 同一ファイル別一シート ¶
sheet1- セル
A1に2を入力する - セル
B1に3を入力する
- セル
sheet2- セル
A1に=SUM(sheet1.A1:B1)を入力する - セル
A1の結果が5と表示される
- セル
3-3. 別ファイル ¶
/tmp/a.odsファイルのsheet1- セル
A1に2を入力する - セル
B1に3を入力する
- セル
/tmp/b.odsファイルのsheet1- セル
A1に='file:///tmp/a.ods'#$sheet1.A1:B1を入力する - セル
A1の結果が5と表示される
- セル
4. 複数セル範囲を参照する ¶
- セル
A1に2を入力する - セル
B1に3を入力する - セル
D1に4を入力する - セル
D2に5を入力する - セル
F1に=SUM(A1:B1, D1:D2)を入力する - セル
F1の結果が14と表示される
5. セル範囲名を定義する ¶
データを貼り付ける。
Name 山田 鈴木 田中
- 上記テキストをコピーする
- セル
A1にフォーカスする Ctrl+VでペーストするOKボタンをクリックする
名前を定義する。
- セル
A1〜A4を範囲選択する - メニュー→
シート→名前付きの範囲または式→指定 名前にNamesを入力する参照範囲または数式が参照したい範囲になっている:$Sheet1.$A$1:$A$4範囲がドキュメント(グローバル)になっている追加ボタンを押下する
6. セル範囲名を参照する ¶
- 先述したセル範囲名
Namesを定義したファイルを使う
6-1. 同一ファイル同一シート単一セル ¶
- セル
B1に=Namesを入力する - セル
B1をB4までコピーする - 各行に
A1と同じ値が表示される
なお、B5以降は#VALUE!となる。元データが存在しないため。
6-2. 同一ファイル同一シートセル範囲 ¶
- セル
C1に=COUNTA(Names)を入力する - セル
C1の結果が4と表示される
6-3. 同一ファイル別シートセル範囲 ¶
- セル範囲名の元データがあるシートとは別のシートを新規作成する
- 1のシートにフォーカスする
- セル
A1に=COUNTA(Names)を入力する - セル
C1の結果が4と表示される
シート名は不要である。同一ドキュメント内であればセル範囲名を指定すれば。
- 必須条件:セル範囲名を定義したとき
範囲がドキュメント(グローバル)になっていること
6-4. 別ファイルのセル範囲 ¶
- セル範囲名を定義したファイルパスを
/tmp/names.odsとする - 新しいodsファイルを作成する
- 2のファイルにある任意シートへフォーカスする
- セル
A1に=COUNTA('file:///tmp/names.ods'#Names)を入力する - セル
C1の結果が4と表示される
なお、ローカルファイルでなくWeb上にあるならfile:///の代わりにhttp://...などのURLを入力すること。
参考
所感
他にも以下のような参照方法がある。だが今回の方法こそが最も利用するはずなので省略する。
対象環境
- Raspbierry pi 4 Model B
- Raspberry Pi OS buster 10.0 2020-08-20 ※
- bash 5.0.3(1)-release
- LibreOffice 6.1.5.2 ※ ※ Help
$ uname -a Linux raspberrypi 5.4.51-v7l+ #1333 SMP Mon Aug 10 16:51:40 BST 2020 armv7l GNU/Linux