安心決済詳しく
- プランの範囲内の修正は無料です。
- 納品から3日以内にご対応がない場合、自動的に承認されます。
代金はお支払い時にお預かりし、納品を承認した時点ではじめて支払われます。

成果物の例
9店舗の月次売上ファイルを1つのExcelレポートにまとめる
実行の仕方
python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO フォルダ:sales/2026-10、ファイル9件を検出
2026-11-02 09:14:03 INFO shop-01.csv:1,284行
2026-11-02 09:14:04 INFO shop-02.xlsx:967行
2026-11-02 09:14:04 WARN shop-07.csv:価格のない3行をスキップ(88行目、412行目、913行目)
2026-11-02 09:14:05 INFO 完了:10,412行 -> report-2026-10.xlsx(シート「売上」と「合計」)
コードではなく設定で
各店舗の列名は settings.ini にまとめてあるので、店舗が増えたり列名が変わったりしても、そこに1行加えるだけです。
[columns]
date = 日付, 販売日, 売上日
product = 商品, 品名, 商品名
quantity = 数量, 個数, 点数
price = 価格, 単価
コードの一部
def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
"""1店舗分のファイルを読み込み、レポートの列名に合わせます。"""
table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
renamed = {}
for name, variants in columns.items():
found = next((c for c in table.columns if c.strip() in variants), None)
if found is None:
raise ReportError(f"{path.name}:'{name}' に当たる列がありません(探した列名:{', '.join(variants)})")
renamed[found] = name
table = table.rename(columns=renamed)[list(columns)]
table["shop"] = path.stem
return table
ファイル: merge_sales.py(310行)、settings.ini、requirements.txt、そしてPythonのインストール方法、スクリプトの実行方法、ログの各メッセージの意味を説明したREADMEを含むZIPファイル。お客様ご自身のパソコンで実行していただきます。
お客様: 9店舗を展開する小さな文具店チェーン。各店舗が月の売上をCSVまたはExcelファイルで送ってきますが、列名が少しずつ異なります。 ご依頼内容: フォルダ内のすべてのファイルを読み込み、列を1つの形にそろえ、全売上と店舗別の合計シートを含む1つのExcelレポートを書き出すスクリプト。
お客様とすべての情報は架空のものです。
このサービスについて
価格、請求書、レポートが為替レートに左右される場合、毎朝レートを入力するのはつい忘れがちです。このGoogle Apps Scriptは、中央銀行が公表するレートや、ご自身でキーを取得するレートサービスなど、お客様が選んだ公開の情報源からレートを読み込み、必要な通貨を日付とともにGoogle スプレッドシートに書き込みます。スタンダード以上では1日1行の履歴タブを残すので、数式でどの日付のレートも参照できます。プレミアムでは、最初の情報源が応答しない場合の2つ目の情報源と、過去の日付の補完が加わります。Google スプレッドシートには一部の通貨に使えるGOOGLEFINANCE関数がありますが、このスクリプトは特定の情報源や保存した履歴が必要な場合のためのものです。レートは情報源のものであり、金融に関する助言はしません。
含まれる内容
- 納品物Apps Scriptのコードと、シートへの追加方法、アクセスの許可、毎日の実行設定を説明したREADMEを入れたZIPファイル。コードは注文ページでも確認できます。
- お客様の情報源お選びの公式レートやサービスのレート
- 必要な通貨必要な通貨だけを、基準通貨に対して
- 日付付きの履歴スタンダード以上で、参照用に1日1行
- キーはコードの外に情報源で必要な場合は、ご自身で入力
- 読みやすいコードコメント付きで、あとから通貨を追加しやすい
ご利用の流れ
- 1情報源通貨と信頼する情報源をお伝えいただきます
- 2コード情報源のドキュメントに沿ってスクリプトとインストールガイドを作成します
- 3お試しシートのコピーで実行し、情報源のサイトと見比べていただきます
- 4修正プランの範囲内で修正を依頼し、エラーメッセージがあればお送りください
ご用意いただくもの
必要な通貨と基準通貨、使いたい情報源(レートを公表しているページかドキュメントのリンク、またはこちらから公開の情報源をいくつかご提案)、レートが必要な頻度と時刻、シート内の書き込み先。過去の日付が必要な場合(プレミアム)は開始日。情報源がキーを求める場合は、ご自身のアカウントで作成してください。こちらには絶対に送らないでください。
お伺いする内容:
- 必要な通貨は?
- どの情報源を使いますか?
- 頻度と時刻は?
- 過去の日付は必要ですか?
プランを比較
| プラン | ベーシック今日のレート¥2,480 | スタンダード履歴付きのレート¥5,100 | プレミアムレートツール¥10,360 |
|---|---|---|---|
| 納期 | 1日 | 2日 | 3日 |
| 修正回数 | 1 | 2 | 3 |
| コード | 150行まで | 400行まで | 1,000行まで |
| コードのファイル数 | 1 | 最大3 | 最大8 |
| 設定ファイル | なし | あり | あり |
| わかりやすいエラーメッセージとログ | なし | あり | あり |
| 実行オプションと定期実行のガイド | なし | なし | あり |
| インストール・実行ガイド(README) | あり | あり | あり |
| 言語 | Google Apps Script | Google Apps Script | Google Apps Script |
| 注文する ベーシック | 注文する スタンダード | 注文する プレミアム |
安心決済
お支払いは注文時ですが、代金が支払われるのは承認された納品に対してのみです。
- 固定料金お支払い後にプランの料金が変わることはありません。
- 代金はお預かりお支払い時、代金はお預かりするだけです。納品を承認した時点でサービス側に支払われます。
- 納品前にチェックすべての成果物はお手元に届く前に品質チェックを受けます。承認前に注文ページで内容を確認できます。
- 無料の修正依頼内容の範囲内で、プランで定められた回数まで修正を依頼できます。
- 3日後に自動承認納品から3日以内に承認も修正依頼もない場合、自動的に承認されます。納品後に注文チャットでメッセージを送った場合、注文は保留されます。こちらから回答した後、3日間のカウントを再開することがあり、その際はチャットでお知らせします。
- やり直しまたは全額返金結果が依頼内容と合わず修正でも解決しなかった場合、または作業に納期の2倍を超える時間がかかった場合は、注文チャットでご連絡ください。作業をやり直すか、代金を全額返金いたします。
質問と回答
レートは正確ですか?
お選びの情報源が公表したとおりの値です。公式レートは通常1営業日に1回決まり、スクリプトが情報源より新しくなることはありません。
トレード用に1分ごとに更新できますか?
価格、請求書、レポート用の日次・時間ごとのレートを想定しており、トレード用ではありません。金融に関する助言はしません。
週末や祝日はどうなりますか?
多くの公式な情報源は、その日には何も公表しません。スタンダード以上では、履歴に前日のレートを繰り返すか、その日を空欄にするかを選べます。
シートへのアクセス権を渡す必要がありますか?
いいえ。スクリプトはご自身のスプレッドシートに追加し、アクセスもご自身で許可していただきます。こちらがお客様のGoogleアカウントにログインすることはありません。
答えが見つかりませんか?