mcpField
X
xlsx

xlsx

github.com/bobmatnycドキュメント78592 回インストール15 週間前に更新
リポジトリ

xlsx について

Excel ファイルをプログラムで読み書き、書式設定、変換するための開発者向けガイドです。openpyxl、pandas、xlsx を使った Python と JavaScript の例を紹介します。

主な機能

  1. 01Excel ワークブックの読み書き
  2. 02openpyxl によるセル書式設定
  3. 03数式の追加
  4. 04pandas によるデータ変換
  5. 05CSV と Excel の相互変換
  6. 06複数ワークブックの結合

活用シーン

  1. 01ワークブックからセル値を抽出
  2. 02数式入りの書式付きシートを作成
  3. 03表形式データの分析と再構成
  4. 04CSV ファイルを Excel に変換
  5. 05複数ワークブックのデータを統合

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/bobmatnyc/claude-mpm-skills --skill xlsx

インストール後、Claude Code で/xlsxを入力して読み込まれたか確認します。

同梱ファイルmetadata.json

詳細

Excel/XLSX の操作

プログラムから Excel ファイルを操作します。

Python(openpyxl)

Excel の読み込み
from openpyxl import load_workbook

wb = load_workbook('data.xlsx')
ws = wb.active  # Get active sheet

# Read cell
value = ws['A1'].value

# Iterate rows
for row in ws.iter_rows(min_row=2, values_only=True):
    print(row)
Excel への書き込み
from openpyxl import Workbook

wb = Workbook()
ws = wb.active
ws.title = "Data"

# Write data
ws['A1'] = 'Name'
ws['B1'] = 'Age'
ws.append(['John', 30])
ws.append(['Jane', 25])

wb.save('output.xlsx')
書式設定
from openpyxl.styles import Font, PatternFill

# Bold header
ws['A1'].font = Font(bold=True)

# Background color
ws['A1'].fill = PatternFill(start_color="FFFF00", fill_type="solid")

# Number format
ws['B2'].number_format = '0.00'  # Two decimals
数式
# Add formula
ws['C2'] = '=A2+B2'

# Sum column
ws['D10'] = '=SUM(D2:D9)'

Python(pandas)

Excel の読み込み
import pandas as pd

# Read sheet
df = pd.read_excel('data.xlsx', sheet_name='Sheet1')

# Read multiple sheets
dfs = pd.read_excel('data.xlsx', sheet_name=None)
Excel への書き込み
# Write DataFrame
df.to_excel('output.xlsx', index=False)

# Multiple sheets
with pd.ExcelWriter('output.xlsx') as writer:
    df1.to_excel(writer, sheet_name='Sheet1')
    df2.to_excel(writer, sheet_name='Sheet2')
データ変換
# Filter
filtered = df[df['Age'] > 25]

# Group by
grouped = df.groupby('Department')['Salary'].mean()

# Pivot
pivot = df.pivot_table(values='Sales', index='Region', columns='Product')

JavaScript(xlsx)

import XLSX from 'xlsx';

// Read file
const workbook = XLSX.readFile('data.xlsx');
const sheetName = workbook.SheetNames[0];
const worksheet = workbook.Sheets[sheetName];

// Convert to JSON
const data = XLSX.utils.sheet_to_json(worksheet);

// Write file
const newWorksheet = XLSX.utils.json_to_sheet(data);
const newWorkbook = XLSX.utils.book_new();
XLSX.utils.book_append_sheet(newWorkbook, newWorksheet, 'Data');
XLSX.writeFile(newWorkbook, 'output.xlsx');

一般的な操作

CSV から Excel への変換
import pandas as pd

df = pd.read_csv('data.csv')
df.to_excel('data.xlsx', index=False)
Excel から CSV への変換
df = pd.read_excel('data.xlsx')
df.to_csv('data.csv', index=False)
Excel ファイルの結合
dfs = []
for file in ['file1.xlsx', 'file2.xlsx', 'file3.xlsx']:
    df = pd.read_excel(file)
    dfs.append(df)

combined = pd.concat(dfs, ignore_index=True)
combined.to_excel('merged.xlsx', index=False)

覚えておくこと

  • 使用後はワークブックを閉じます
  • 大きなファイルはチャンク単位で処理します
  • 書き込む前にデータを検証します
  • データ分析には pandas、書式設定には openpyxl を使用します

コメント