excel-processor

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Excel Processor Skill

Excel Processor Skill

Excelファイルの作成、編集、解析を行うスキルです。
这是一项用于创建、编辑和解析Excel文件的技能。

概要

概述

Excelの読み書き、数式、グラフ、スタイル設定を自動化します。
可自动化完成Excel的读写、公式、图表、样式设置等操作。

主な機能

主要功能

  • データ読み書き: セル、行、列の操作
  • 数式: SUM、VLOOKUP等の自動生成
  • グラフ: 折れ線、棒、円グラフ
  • スタイル: 色、フォント、罫線
  • 条件付き書式: ルールベースの書式
  • ピボットテーブル: 集計表作成
  • CSV/JSON変換: データ変換
  • 数据读写: 单元格、行、列的操作
  • 公式: 自动生成SUM、VLOOKUP等公式
  • 图表: 折线图、柱状图、饼图
  • 样式: 颜色、字体、边框
  • 条件格式: 基于规则的格式设置
  • 数据透视表: 创建汇总表
  • CSV/JSON转换: 数据格式转换

使用方法

使用方法

Python (openpyxl)

Python (openpyxl)

python
from openpyxl import Workbook, load_workbook
from openpyxl.styles import Font, PatternFill
from openpyxl.chart import BarChart, Reference
python
from openpyxl import Workbook, load_workbook
from openpyxl.styles import Font, PatternFill
from openpyxl.chart import BarChart, Reference

新規作成

新規作成

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

データ入力

データ入力

ws['A1'] = "Product" ws['B1'] = "Sales" ws.append(["iPhone", 1000]) ws.append(["MacBook", 800])
ws['A1'] = "Product" ws['B1'] = "Sales" ws.append(["iPhone", 1000]) ws.append(["MacBook", 800])

スタイル設定

スタイル設定

ws['A1'].font = Font(bold=True) ws['A1'].fill = PatternFill(start_color="FFFF00", fill_type="solid")
ws['A1'].font = Font(bold=True) ws['A1'].fill = PatternFill(start_color="FFFF00", fill_type="solid")

グラフ作成

グラフ作成

chart = BarChart() data = Reference(ws, min_col=2, min_row=1, max_row=3) cats = Reference(ws, min_col=1, min_row=2, max_row=3) chart.add_data(data, titles_from_data=True) chart.set_categories(cats) ws.add_chart(chart, "D1")
wb.save("sales.xlsx")
chart = BarChart() data = Reference(ws, min_col=2, min_row=1, max_row=3) cats = Reference(ws, min_col=1, min_row=2, max_row=3) chart.add_data(data, titles_from_data=True) chart.set_categories(cats) ws.add_chart(chart, "D1")
wb.save("sales.xlsx")

読み込み

読み込み

wb = load_workbook("sales.xlsx") ws = wb.active for row in ws.iter_rows(values_only=True): print(row)
undefined
wb = load_workbook("sales.xlsx") ws = wb.active for row in ws.iter_rows(values_only=True): print(row)
undefined

JavaScript (ExcelJS)

JavaScript (ExcelJS)

javascript
const ExcelJS = require('exceljs');

async function createExcel() {
  const workbook = new ExcelJS.Workbook();
  const worksheet = workbook.addWorksheet('Sales');

  // ヘッダー
  worksheet.columns = [
    { header: 'Product', key: 'product', width: 15 },
    { header: 'Sales', key: 'sales', width: 10 }
  ];

  // データ
  worksheet.addRow({ product: 'iPhone', sales: 1000 });
  worksheet.addRow({ product: 'MacBook', sales: 800 });

  // スタイル
  worksheet.getRow(1).font = { bold: true };
  worksheet.getRow(1).fill = {
    type: 'pattern',
    pattern: 'solid',
    fgColor: { argb: 'FFFFFF00' }
  };

  // 数式
  worksheet.getCell('B4').value = { formula: 'SUM(B2:B3)' };

  await workbook.xlsx.writeFile('sales.xlsx');
}
javascript
const ExcelJS = require('exceljs');

async function createExcel() {
  const workbook = new ExcelJS.Workbook();
  const worksheet = workbook.addWorksheet('Sales');

  // ヘッダー
  worksheet.columns = [
    { header: 'Product', key: 'product', width: 15 },
    { header: 'Sales', key: 'sales', width: 10 }
  ];

  // データ
  worksheet.addRow({ product: 'iPhone', sales: 1000 });
  worksheet.addRow({ product: 'MacBook', sales: 800 });

  // スタイル
  worksheet.getRow(1).font = { bold: true };
  worksheet.getRow(1).fill = {
    type: 'pattern',
    pattern: 'solid',
    fgColor: { argb: 'FFFFFF00' }
  };

  // 数式
  worksheet.getCell('B4').value = { formula: 'SUM(B2:B3)' };

  await workbook.xlsx.writeFile('sales.xlsx');
}

データ分析 (pandas)

数据分析 (pandas)

python
import pandas as pd
python
import pandas as pd

読み込み

読み込み

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

分析

分析

summary = df.groupby('Category')['Sales'].sum()
summary = df.groupby('Category')['Sales'].sum()

書き込み

書き込み

with pd.ExcelWriter('output.xlsx', engine='openpyxl') as writer: df.to_excel(writer, sheet_name='Data', index=False) summary.to_excel(writer, sheet_name='Summary')
undefined
with pd.ExcelWriter('output.xlsx', engine='openpyxl') as writer: df.to_excel(writer, sheet_name='Data', index=False) summary.to_excel(writer, sheet_name='Summary')
undefined

高度な機能

高级功能

python
from openpyxl.utils.dataframe import dataframe_to_rows
from openpyxl.chart import LineChart, Reference
python
from openpyxl.utils.dataframe import dataframe_to_rows
from openpyxl.chart import LineChart, Reference

データフレームから

データフレームから

import pandas as pd df = pd.DataFrame({ 'Month': ['Jan', 'Feb', 'Mar'], 'Sales': [100, 150, 120] })
wb = Workbook() ws = wb.active for r in dataframe_to_rows(df, index=False, header=True): ws.append(r)
import pandas as pd df = pd.DataFrame({ 'Month': ['Jan', 'Feb', 'Mar'], 'Sales': [100, 150, 120] })
wb = Workbook() ws = wb.active for r in dataframe_to_rows(df, index=False, header=True): ws.append(r)

条件付き書式

条件付き書式

from openpyxl.formatting.rule import ColorScaleRule ws.conditional_formatting.add('B2:B4', ColorScaleRule(start_type='min', start_color='AA0000', end_type='max', end_color='00AA00'))
from openpyxl.formatting.rule import ColorScaleRule ws.conditional_formatting.add('B2:B4', ColorScaleRule(start_type='min', start_color='AA0000', end_type='max', end_color='00AA00'))

数式

数式

ws['B5'] = '=AVERAGE(B2:B4)' ws['B6'] = '=MAX(B2:B4)'
wb.save('advanced.xlsx')
undefined
ws['B5'] = '=AVERAGE(B2:B4)' ws['B6'] = '=MAX(B2:B4)'
wb.save('advanced.xlsx')
undefined

ライブラリ

Python

Python

  • openpyxl: .xlsx読み書き
  • xlrd/xlwt: .xls (旧形式)
  • pandas: データ分析
  • xlsxwriter: 高速書き込み
  • openpyxl: 读写.xlsx文件
  • xlrd/xlwt: 处理.xls(旧格式)
  • pandas: 数据分析
  • xlsxwriter: 高速写入

JavaScript

JavaScript

  • ExcelJS: 完全機能
  • xlsx: SheetJS、読み込み特化
  • node-xlsx: シンプル
  • ExcelJS: 功能完整
  • xlsx: SheetJS,专注于读取
  • node-xlsx: 简洁易用

Go

Go

  • excelize: 高性能
  • excelize: 高性能

Java

Java

  • Apache POI: 標準ライブラリ
  • Apache POI: 标准库

バージョン情報

版本信息

  • スキルバージョン: 1.0.0
  • 最終更新: 2025-01-22
  • 技能版本: 1.0.0
  • 最后更新: 2025-01-22