ReoGrid ReoGrid Web

テーブルスタイル

v1.4.0 から、範囲をライブな Excel テーブルListObject)に変換し、組み込みの縞模様スタイルを適用できます。スタイルは計算されたオーバーレイであり — テーブルが伸縮すると縞模様の行・列が自動的に再配置され — 個々のセル書式に焼き込まれません

Note: テーブルの作成とスタイル適用は Pro 機能です。テーブルの読み取り(getTablegetTablesgetTableAt)は Lite でも利用できるため、Pro で作成した — または xlsx からインポートした — テーブルは無償版でも参照できます。

範囲をテーブルとして整形

最も手軽な方法は RangeHandle.formatAsTable です。

import { createReogrid } from '@reogrid/pro'

const grid = createReogrid({ workspace: '#app' })
const ws = grid.worksheet

// A1:D20 — 先頭行がヘッダー
const table = ws.range('A1:D20').formatAsTable({ style: 'TableStyleMedium9' })
console.log(table.name)  // 'Table1'

明示的な RangePosition(左上+個数)を指定して addTable を呼ぶこともできます。

const table = ws.addTable(
  { row: 0, col: 0, rows: 20, columns: 4 }, // A1:D20、ヘッダー行を含む
  { name: 'Sales', style: 'TableStyleMedium2', showRowStripes: true },
)

どちらもテーブルを記述する TableDefinition(id・名前・ヘッダーを含む全範囲・導出された列・スタイル情報)を返します。

AddTableOptions

オプション既定値説明
namestring自動(Table1, Table2, …)ワークブック内で一意の内部名。
stylestring'TableStyleMedium2'組み込みの OOXML スタイル名(後述)。
headerRowCount0 | 11先頭行をヘッダーにするか。
showRowStripesbooleanスタイル既定行の縞模様。
showColumnStripesbooleanスタイル既定列の縞模様。
showFirstColumnbooleanスタイル既定先頭列を強調。
showLastColumnbooleanスタイル既定末尾列を強調。

スタイル名

style は OOXML の組み込みテーブルスタイル名です。ReoGrid は標準パレットの厳選サブセットを同梱しています。

ファミリー名前
LightTableStyleLight1TableStyleLight21
MediumTableStyleMedium1TableStyleMedium28
DarkTableStyleDark1TableStyleDark11

名前はフォールバックパレットで描画される場合でもインポート・エクスポートを通じてそのまま保持されるため、ReoGrid で設定したテーブルは Excel でもスタイルの同一性を保ちます。

縞模様は自動で再配置

スタイルは焼き込みではなくオーバーレイのため、テーブルの形が変わるたびに行・列の縞が再計算されます — 途中に行を挿入しても、手動での再スタイルなしに縞が正しいまま保たれます。縞模様はいつでも切り替えられます。

ws.range('A1:D20').formatAsTable({ style: 'TableStyleMedium9', showColumnStripes: true })

テーブルの読み取りと削除(Lite で読み取り可)

ws.getTables()            // シート上の TableDefinition[]
ws.getTable('Sales')      // 名前で取得
ws.getTableAt(3, 1)       // セルを覆うテーブル、または undefined
ws.removeTable('Sales')   // テーブルを削除(セルの値は保持)

getTablegetTablesgetTableAt は Lite でも動作するため、Pro ライセンスがなくてもテーブルを検出・参照できます。

xlsx への往復

テーブルはスタイル情報と列名とともに xl/tables/tableN.xml にシリアライズされ、Excel でネイティブテーブルとして開けます — また Excel のテーブルは ReoGrid のテーブルとしてインポートされます。ReoGrid JSON でも往復します。

関連項目

ニュースレター

開発の最新情報をお届けします

新しいリリース・機能追加・お知らせをいち早く受け取るには、
メーリングリストにご登録ください。