計算手順
- 体積重量 = (縦 × 横 × 高さ) / 5
- 発送重量 = max(体積重量, 実重量)
- 最終重量 = ceil(発送重量 / 500) × 500
- 基本送料 = `priceList[weightList.indexOf(最終重量)]`(存在しない場合は 0)
- ピーク料金 = 110 × (最終重量 / 1000)
- 燃料サーチャージ = floor(基本送料 × fuelRatio)
- 送料合計 = 基本送料 + ピーク料金 + 燃料サーチャージ
- 原価合計 = 仕入原価 + 送料合計
- 販売額(USD) = floor((原価合計 / (1 - 利益率 - 0.2) / 為替レート) × 10) / 10
変数の意味
- 縦・横・高さ: 入力されたサイズ(cm)
- 実重量: 入力された重量(g)
- weightList / priceList: Google Sheets から読み込む送料テーブル
- fuelRatio: 燃料サーチャージ(例: 0.30)
- 利益率: 利益率(例: 0.25)
- 為替レート: USD/JPY のレート(例: 135)
- 0.2: 固定の手数料 20% として扱う
補足
販売額は小数第1位まで(0.1刻み)に切り捨てています。送料テーブルに 該当する重量がない場合は基本送料を 0 として扱います。