作成日:2025年04月28日
FileMakerからGoogleSpreadSheetを利用してExcelファイルを作成する(1)


どうも、にゃん太です
FileMakerからExcelファイルを作成する方法を連続で書いてきました
今回のメモでは、Googleのスプレッドシートを利用して作成する方法を書いていきます
前準備
Googleのスプレッドシートは Google Sheets API を利用して操作する事ができます
但し、利用にあたってはいくつか前準備が必要になります
順番に設定していきましょう
Google Sheets API の有効化
まずはGoogle Cloud PlatformへアクセスしてGoogle Sheets APIを有効にします
場所は説明しませんが、検索すればすぐに見つかると思います

認証情報の作成
次に、OAuth認証の設定を行います
左のメニューを開き、「認証情報」を選択します












トークンの生成
最後に、FileMakerでトークンを生成します
処理のために、下図の様にテーブルおよびレイアウト、スクリプトを作成します


OAuth認証
# ################################################## # OAuth認証 # ################################################## レイアウト切り替え [「トークン生成」(spreadSheet); アニメーション:なし] # 認証 変数を設定 [$url; 値: "https://oauth2.googleapis.com/device/code"] 変数を設定 [$id; 値: "<>"] 変数を設定 [$url; 値: "-d \"client_id=" & $id & "&scope=https://www.googleapis.com/auth/spreadsheets\""] URLから挿入 [選択; ダイアログあり:オフ; ターゲット:$result; $url; cURLオプション:$curl; URLを自動的にエンコードしない] # コード入力 変数を設定 [$url; 値: JSONGetElement ( $result; "verification_url" )] 変数を設定 [$code; 値: JSONGetElement ( $result; "user_code" )] 変数を設定 [$device; 値: JSONGetElement ( $result; "device_code" )] フィールド設定 [spreadSheet::code; $code] フィールド設定 [spreadSheet::device; $device] Webビューアの設定 [オブジェクト名: "web"; URL; $url]
Token取得
# ################################################## # Token取得 # ################################################## レイアウト切り替え [「トークン生成」(spreadSheet); アニメーション:なし] # Token取得申請 変数を設定 [$url; 値: "https://www.googleapis.com/oauth2/v3/token"] 変数を設定 [$id; 値: "<>"] 変数を設定 [$secret; 値: "<>"] 変数を設定 [$device; 値: spreadSheet::device] 変数を設定 [$grant; 値: "urn:ietf:params:oauth:grant-type:device_code"] 変数を設定 [$curl; 値: "-d \"client_id=" & $id & "&client_secret=" & $secret & "&device_code=" & $device & "&grant_type=" & $grant & "\" -H \"Contenttype: application/x-www-form-urlencoded\""] URLから挿入 [選択; ダイアログあり:オフ; ターゲット:$result; $url; cURLオプション:$curl; URLを自動的にエンコードしない] # Token取得 変数を設定 [$token; 値: JSONGetElement ( $result; "access_token" )] 変数を設定 [$refresh; 値: JSONGetElement ( $result; "refresh_token" )] フィールド設定 [spreadSheet::accessToken; $token] フィールド設定 [spreadSheet::accessTokenLimit; Get ( タイムスタンプ ) + 3600] フィールド設定 [spreadSheet::refreshToken; $refresh] フィールド設定 [spreadSheet::refreshTokenLimit; Get ( タイムスタンプ ) + 15552000]
では早速、実行してみましょう










OAuth認証され、アクセストークンおよびリフレッシュトークンが取得できました
これでようやく前準備が完了です
前準備が終わったところで今回はここまでとします
次回は実際にスプレッドシートを操作してみます

以上で今日のメモ書きは終了です
内容はいかがでしたか?
もしご意見やご要望、誤りの指摘などありましたら、下記フォームよりお気軽にご連絡ください