次の方法で共有


Office スクリプトで外部取得呼び出しを使用する

このスクリプトは、ユーザーの GitHub リポジトリに関する基本情報を取得します。 単純なシナリオで fetch を使用する方法を示します。 fetchまたはその他の外部呼び出しの使用の詳細については、「Office スクリプトでの外部 API 呼び出しのサポート」を参照してください。 GitHub API から返されるものなど、 JSON オブジェクトの操作については、「 JSON を使用して Office スクリプトとの間でデータを渡す」を参照してください。

GitHub API リファレンスで使用されている GitHub API の詳細については、こちらをご覧ください。 Web ブラウザーで https://api.github.com/users/{USERNAME}/repos にアクセスして、生の API 呼び出しの出力を確認することもできます (必ず {USERNAME} プレースホルダーを GitHub ID に置き換えてください)。

リポジトリ情報の取得の例

サンプル コード: ユーザーの GitHub リポジトリに関する基本情報を取得する

サンプル ブックで次のスクリプトを実行し、サンプルを自分で試してください。 コード エディターを開くには、[ Automate>New Script>Create in Code Editor]\(コード エディターで作成\) に移動し、既定のコードを実行するサンプル コードに置き換えて、[ 実行] を選択します。

async function main(workbook: ExcelScript.Workbook) {
  // Call the GitHub REST API.
  // Replace the {USERNAME} placeholder with your GitHub username.
  const response = await fetch('https://api.github.com/users/{USERNAME}/repos');
  const repos: Repository[] = await response.json();

  // Create an array to hold the returned values.
  const rows: (string | boolean | number)[][] = [];

  // Convert each repository block into a row.
  for (let repo of repos) {
    rows.push([repo.id, repo.name, repo.license?.name, repo.license?.url]);
  }
  // Create a header row.
  const sheet = workbook.getActiveWorksheet();
  sheet.getRange('A1:D1').setValues([["ID", "Name", "License Name", "License URL"]]);

  // Add the data to the current worksheet, starting at "A2".
  const range = sheet.getRange('A2').getResizedRange(rows.length - 1, rows[0].length - 1);
  range.setValues(rows);
}

// An interface matching the returned JSON for a GitHub repository.
interface Repository {
  name: string,
  id: string,
  license?: License
}

// An interface matching the returned JSON for a GitHub repo license.
interface License {
  name: string,
  url: string
}

トレーニング ビデオ: 外部 API 呼び出しを行う方法

このサンプルを YouTube で見てください