===== 表の作り方 =====
=== 目次 ===
* [[#通常の表]]
* [[#文字位置を調整]]
* [[#セルを結合する方法]]
* [[#色を付ける]]
* [[#横幅を指定する]]
* [[#ソート機能をつける]]
* [[#ソート機能補足]]
* [[#表を使って計算する]]
==== 通常の表 ====
^A^B^C^D^
|A1|B1|C1|D1|
|A2|B2|C2|D2|
|A3|B3|C3|D3|
表の見出しは「^」で区切り、セルは「|」で区切ります
^A^B^C^D^
|A1|B1|C1|D1|
|A2|B2|C2|D2|
|A3|B3|C3|D3|
==== 文字位置を調整 ====
|left | center | right|
文字の両サイドに空白のスペースを入れることで左より、中央、右寄りなどを調節できます
|left | center | right|
==== セルを結合する方法 ====
^A^B^C^D^
|A1||C1|D1|
|A2||C2|D2|
|A3||||
横を結合する場合は「|」を続けて入力し、空白のセルを作ります
^A^B^C^D^
|A1||C1|D1|
|A2||C2|D2|
|A3||||
^A^B^C^D^
|A1|B1|C1|D1|
|:::|B2|C2|D2|
|:::|B3|C3|D3|
縦を結合する場合は「:::」と入力します
^A^B^C^D^
|A1|B1|C1|D1|
|:::|B2|C2|D2|
|:::|B3|C3|D3|
==== 色を付ける ====
^A^B^C^D^
|A1|@:B1|C1|D1|
|A2|@:B2|C2|D2|
|A3|@red:B3|C3|D3|
セルの先頭に「@:」を入力します。「@」のあとに色を入力すると指定した色になります
^A^B^C^D^
|A1|@:B1|C1|D1|
|A2|@:B2|C2|D2|
|A3|@red:B3|C3|D3|
==== 横幅を指定する ====
|< 60% 1% 1% 20% - >|
^A^B^C^D^
|A1|B1|C1|D1|
|A2|B2|C2|D2|
|A3|B3|C3|D3|
表の先頭に「|< 60% 1% 1% 20% - >|」と入力します。最初の60%は全体の幅です。これを「1%、1%、20%、-(残り)」のように各列に指定しています。
|< 60% 1% 1% 20% - >|
^A^B^C^D^
|A1|B1|C1|D1|
|A2|B2|C2|D2|
|A3|B3|C3|D3|
==== ソート機能をつける ====
^武器名^ダメージ^弾数^備考^
|いろは|100|20|強いぞ|
|にほへ|50|40|普通だ|
|とちり|10|90|弱いぞ|
表を~で囲います。上部のには各列をどの順番で並び替えるか指定します。
* alphaで五十音順
* numericで数値順
* nosortでソート禁止
^武器名^ダメージ^弾数^備考^
|いろは|100|20|強いぞ|
|にほへ|50|40|普通だ|
|とちり|10|90|弱いぞ|
==== ソート機能補足 ====
ソートの指定は4つのグループに分けられ、それぞれに機能があります。
<sortable 1 sumrow=2 1=alpha 2=numeric 3=numeric 4=nosort 3phase >
(1)表示したときにあらかじめソート状態にするか指定できます。
* 1なら1列目を昇順にソートした状態で表示します
* r3なら3列目を降順にソートした状態で表示します
(2)ソート禁止の行を指定できます。指定された行はソートされません(一つのみ指定可)
* sumrow なら最後の1行をソートしない
* sumrow=2 なら最後の2行をソートしない
(3)各列のソート方法を指定できます。前項の[[#ソート機能をつける]]で説明した部分です。
(4)3phaseと指定すると昇順・降順の他に「元の順」が追加されます。
^武器名^ダメージ^弾数^備考^
|いろは|100|20|強いぞ|
|にほへ|50|40|普通だ|
|とちり|10|90|弱いぞ|
|ぬるを|70|60|おしゃれだ|
|わかた|5|35|いいにおい|
|説明文など ||||
|このように下部に行があるときにsumrowを指定するとソートされなくなります ||||
^武器名^ダメージ^弾数^備考^
|いろは|100|20|強いぞ|
|にほへ|50|40|普通だ|
|とちり|10|90|弱いぞ|
|ぬるを|70|60|おしゃれだ|
|わかた|5|35|いいにおい|
|説明文など ||||
|このように下部に行があるときにsumrowを指定するとソートされなくなります ||||
==== 表を使って計算する ====
^0^1^2^3^4^
|r0c0|r0c1|r0c2|@:r0c3|r0c4|
|r1c0|r1c1|r1c2|r1c3|r1c4|
|r2c0|r2c1|r2c2|r2c3|r2c4|
|r3c0|r3c1|r3c2|r3c3|r3c4|
上記のように各セルは行と列で名前が付けられています。
注意点はスタートが1ではなく0からカウントされることです。
例えば黄色でマーキングした「r0c3」というのは「0行目の3列目」ということになります。
=== 代表的なコマンド ===
^記号 ^説明 ^
| + | 足し算 |
| - | 引き算 |
| * | 乗算 |
| ** | 累乗 |
| / | 割り算 |
^ コマンド ^説明 ^
| average(r0c0:r1c1) |指定した範囲の平均 |
| cell(1,5) |指定したセルの数値。先に行、後に列で指定します。cell(1,5)なら1行5列目 |
| col() |現在の列 |
| row() |現在の行 |
| max(r0c0:r1c1) |指定された範囲内の最小値を返します |
| min(r0c0:r1c1) |指定された範囲内の最小値を返します |
| round(number;3) |指定された小数点で四捨五入します |
| sum(r0c0:r1c1) |指定された範囲の合計を返します |
=== 記述の見本 ===
これらのコマンドを使ってDPSを算出してみます。威力×連射速度をすればDPSが求められます。数式を記述するときは前後に「~~= ~~」を付けます。
^ 種類 ^ 威力 ^ 弾数 ^ 連射 ^ DPS ^ 計算式見本^
| AT-43 | 43 | 30 | 10.82 | ~~=r1c1*r1c3~~ | @:~~=r1c1*r1c3~~ |
| UGG-01 | 32 | 30 | 11.71 | ~~=r2c1*r2c3~~ | @:~~=r2c1*r2c3~~ |
| RB15 | 32 | 30 | 12.30 | ~~=r3c1*r3c3~~ | @:~~=r3c1*r3c3~~ |
| R4K1 | 36 | 30 | 12.30 | ~~=r4c1*r4c3~~ | @:~~=r4c1*r4c3~~ |
しかしこの記述方法には欠点があり、RB15とR4K1の間に新たな武器を追加したとき、R4K1以下の計算式をすべて変更する必要があります。そこでこの式はこのように書き換えることができます。
^ 種類 ^ 威力 ^ 弾数 ^ 連射 ^ DPS ^ 計算式見本^
| AT-43 | 43 | 30 | 10.82 | ~~=cell(1,row())*cell(3,row())~~ | @:~~=cell(1,row())*cell(3,row())~~ |
| UGG-01 | 32 | 30 | 11.71 | ~~=cell(1,row())*cell(3,row())~~ | @:~~=cell(1,row())*cell(3,row())~~ |
| RB15 | 32 | 30 | 12.30 | ~~=cell(1,row())*cell(3,row())~~ | @:~~=cell(1,row())*cell(3,row())~~ |
| R4K1 | 36 | 30 | 12.30 | ~~=cell(1,row())*cell(3,row())~~ | @:~~=cell(1,row())*cell(3,row())~~ |
これは「r1c3」を「cell(3,1)」という記述方法に変換し、さらに現在の行を指定する「row()」に書き換えることで「cell(3,row())」という形にしています。この記述ならば行が変わっても自動で現在の行を参照するため、行ごとに数式を書き換える必要がありません。
次にこの計算式を小数第一位まで表示するようにします。
^ 種類 ^ 威力 ^ 弾数 ^ 連射 ^ DPS ^ 計算式見本^
| AT-43 | 43 | 30 | 10.82 | ~~=round(cell(1,row())*cell(3,row());1)~~ | @:~~=round(cell(1,row())*cell(3,row());1)~~ |
| UGG-01 | 32 | 30 | 11.71 | ~~=round(cell(1,row())*cell(3,row());1)~~ | @:~~=round(cell(1,row())*cell(3,row());1)~~ |
| RB15 | 32 | 30 | 12.30 | ~~=round(cell(1,row())*cell(3,row());1)~~ | @:~~=round(cell(1,row())*cell(3,row());1)~~ |
| R4K1 | 36 | 30 | 12.30 | ~~=round(cell(1,row())*cell(3,row());1)~~ | @:~~=round(cell(1,row())*cell(3,row());1)~~ |
「round( ;1)」を加えることで少数第一位まで記述することができました。整数で表示したい場合は「round( ;0)」と記述します。
計算式には他にも色々なコマンドがあり、複雑な計算も可能です。
ここでは実際に使いそうな主なコマンドのみを紹介しましたが、より詳しいコマンドを知りたい場合は下記のURLから確認することができます。
https://www.dokuwiki.org/plugin:tablecalc