AIでスクリプトを作ってみよう
ChatGPT、Claude、GeminiなどのAIチャットを使って、Pybesで動くスクリプトを実際に作ってみましょう。
例題:フォルダ内のExcelファイルを1つに結合する
複数のExcelファイル(.xlsx)が入ったフォルダがあり、それらを1つのExcelファイルにまとめたい。こうした作業は日常業務でよくあるシーンです。
この例では、各ファイルの内容をシート別に分けて1つのファイルに結合するスクリプトを、AIに作ってもらいます。
Step 1 — Pybesでプロンプトを生成する
- 新しいスクリプトを作成
- エディタのツールバーで「Prompt」ボタンをクリック
- プロンプトがクリップボードにコピーされる
ポイント: この時点ではフィールドを設定しなくてOK。Pybesが後からコードの変数を自動検出します。
Step 2 — AIにやりたいことを伝える
- AIチャット(ChatGPT、Claude、Geminiなど)を開く
- コピーしたプロンプトを貼り付ける
- プロンプトの末尾に以下のように書く:
指定したフォルダ内のすべてのExcelファイル(.xlsx)を読み込んで、
1つのExcelファイルに結合して保存してください。
各ファイルの内容はシート名を元ファイル名にして分けてください。
やりたいことは日本語で、具体的に書くのがコツです。「Excelを結合」ではなく、どう結合するか(シート別、行追加など)を明確に伝えましょう。
Step 3 — 生成されたコードをPybesに貼り付ける
AIが以下のようなコードを生成してくれます。
import sys
import json
import os
from openpyxl import load_workbook, Workbook
with open(sys.argv[1], encoding="utf-8") as f:
inputs = json.load(f)
input_folder = inputs["input_folder"]
output_file = inputs["output_file"]
wb_out = Workbook()
wb_out.remove(wb_out.active)
files = [f for f in os.listdir(input_folder) if f.endswith(".xlsx")]
print(f"{len(files)} 件のExcelファイルが見つかりました")
for i, fname in enumerate(files, 1):
path = os.path.join(input_folder, fname)
wb_in = load_workbook(path)
for sheet in wb_in.sheetnames:
ws_in = wb_in[sheet]
sheet_name = os.path.splitext(fname)[0]
if sheet_name in wb_out.sheetnames:
sheet_name = f"{sheet_name}_{sheet}"
ws_out = wb_out.create_sheet(title=sheet_name[:31])
for row in ws_in.iter_rows(values_only=False):
for cell in row:
ws_out.cell(row=cell.row, column=cell.column, value=cell.value)
print(f"[{i}/{len(files)}] {fname} を読み込みました")
wb_out.save(output_file)
print(f"結合完了: {output_file}")
このコードをそのままPybesのエディタに貼り付けます。
Step 4 — 変数が自動検出される
コードを貼り付けると、Pybesが inputs["input_folder"] と inputs["output_file"] を自動検出します。
- 検出された変数がエディタの右側に表示される
- クリックするだけで入力フィールドとして追加される
input_folder→ 「フォルダ」タイプに変更output_file→ 「ファイル」タイプに変更し、拡張子をxlsxに設定
Step 5 — 値を入力して実行
input_folderにExcelファイルが入っているフォルダを指定output_fileに出力先のファイルパスを指定- 実行ボタンをクリック
- コンソールに進捗が表示され、結合が完了
うまくいかない時は
- コンソールにエラーが表示されたら、「Consult」ボタンをクリック
- デバッグ用のプロンプトがコピーされるので、AIチャットに貼り付ける
- AIが原因を分析してコードを修正してくれる
ポイント: Pybesでは実行結果、コード、入力値を含む専用のデバッグプロンプトが自動生成されます。エラーの内容を自分で説明する必要はありません。
もっと試してみよう
- スクリプト紹介ページで、すぐに使えるサンプルスクリプトを確認できます
- 他のユースケース: CSVの変換、ファイル名の一括リネーム、PDFの結合など
- 作ったスクリプトは.pybesファイルとして書き出してチームに共有できます
- AIプロンプトの詳細はプロンプト生成のページを参照