md-advanced-tables/formulas.md at main · tgrosinger/md-advanced-tables

下に記述した以外にも多くの機能があるが、自分の用途では合算程度しか使わないので、その範囲でまとめる。

基本

  • 数式は表の直後のHTMLコメントとして記述する
  • <!-- TBLFM: DESTINATION=SOURCE -->の構造となる
  • <!-- TBLFM: @>$2=sum(@I..@-1) -->であれば、
    • sum(@I..@-1)からデータを取り出して@>$2へ格納するという意味
    • @>$2@>(最後の行)と$2(2列目)

行と列

  • 行は@、列は$で表す
  • @または$に続けて数字を書くと絶対行、絶対列の指定になる
    • 行はヘッダの次が1行目になる(罫線の場合でも)
  • @<  $< 先頭行、先頭列
  • @>  $> 最終行、最終列
  • @I テーブルのヘッダーと本文を区切る行を指す(先頭行から処理したい場合に指定)
  • @-1 相対指定の例(同じ列の1行上)
  • $+2 相対指定の例(同じ行の2列右)

範囲指定

  • 開始位置..終了位置 で範囲指定できる
  • @I..@-1であれば現在の列のヘッダーの後の行から、最後の列のこれより上の行までという意味

関数

  • sum
    • 指定された範囲、行、または列のすべてのセルを一緒に加算し返却する
  • mean
    • 指定された範囲、行、または列の平均を計算し返却する

最終行に合計

最終行へ合算値を計算して設定(1607)

| Item              | Grams |
| ----------------- | ----- |
| Whole Wheat Flour | 110   |
| Bread Flour       | 748   |
| Warm Water        | 691   |
| Salt              | 18    |
| Starter           | 40    |
| **Total Grams**   | 1607  |
<!-- TBLFM: @>$>=sum(@I..@-1) -->

各行に計算値

各行へ控除率を計算して設定(100-実行還元率)

 
|              | 実行還元率 | 控除率 |
| ------------ | ---------- | ------ |
| 宝くじ       | 45.7       | 54.3   |
| サッカーくじ | 49.6       | 50.4   |
| 競艇         | 74.8       | 25.2   |
| 競輪         | 75.0       | 25.0   |
| オートレース | 74.8       | 25.2   |
| 競馬         | 74.1       | 25.9   |
<!-- TBLFM: @2$>..@>$>=(100-$-1);%.1f -->