Docly Child

シートを削除する

325 views

この記事では、GoogleSpreadSheetの任意のシートを削除する方法や使用例をご紹介します。

【できるようになること】
・DeleteSheetアクションの操作
・シートを複製した後、コピー元のシートを削除


※ご注意※

この記事はGoogleSpreadSheetに限った処理方法であり、ExcelやExcelOnlineには2023年10月現在対応していません。

 DeleteSheet

シートの削除には、Google Spreadsheetカテゴリの「DeleteSheet」アクションを使用します。

各パラメータの内訳は以下です。

  • シートを削除するスプレッドシート
    • フロー内でこれ以前に設定したGetSpreadSheetアクションのアウトプットを指定します
  • 削除するシート名一覧
    • [ ]で囲む必要があります 
    • [ ]内のシート名は”(ダブルクォーテーション)で囲む必要があります
    • カンマ区切りで複数シート指定が可能です(複数指定の際、配列形式で表記する必要があります)

また、1つのスプレッドシート内に存在するすべてのシートを削除することはできません。複数シートを指定している場合、どれも削除されないといった形になります。

 ワークフローの設定例

今回は、新規スプレッドシートを作成し、既存のスプレッドシートから特定のシートをコピーした後、元シートを削除するワークフローの例をご紹介します。

すでにコネクション作成済みの場合は、この手順は省略してください。

・GoogleSpreadsheetのコネクションを登録します。
・登録方法はこちらをご参照ください

※こちらはワークフロー外での作業になります。

コピーするシートの貼り付け先として、あらかじめ新規スプレッドシートを用意しておきます。今回は例として「新スプシ」という名前のスプレッドシートを作成しました。

また、コピー元となるスプレッドシートおよび任意のシートも用意しておきます。今回は「旧スプシ」の「シート名集」というシートをコピーしたいと思います。

※ここからがワークフローの設定になります。

GetSpreadSheetアクションを使って、使用する2つのスプレッドシートを取得します。

それぞれのスプレッドシートに対して、コネクションを設定し、スプレッドシートのIDを入力または右のアイコンから選択します。

DuplicateSheetアクションを設定し、シートをコピーします。設定方法に関してはこちらの記事に詳しく記載しています。

DeleteSheetアクションを設定し、コピー元のシートを削除します。

ワークフローの設定は以上で完了です。

この状態でワークフローを実行します。

ワークフローが正常に実行されました。スプレッドシートも確認してみましょう。

# 既存のスプレッドシートを取得
+get_spreadsheet_1:
  action>: GetSpreadsheet
  provider: ''
  spreadsheet_id: ''
  private: false
  meta:
    display:
      provider:
        type: chip
        label: 'Google Spreadsheet (xxx@xxxxx)'
        icon: googlespreadsheet
      spreadsheet_id:
        label: ''
        icon: text
        type: chip

# 既存のスプレッドシートを取得
+get_spreadsheet_2:
  action>: GetSpreadsheet
  provider: ''
  spreadsheet_id: ''
  private: false
  meta:
    display:
      provider:
        type: chip
        label: 'Google Spreadsheet (xxx@xxxxx)'
        icon: googlespreadsheet
      spreadsheet_id:
        label: ''
        icon: text
        type: chip

# シートをコピー
+duplicate_sheet_1:
  action>: DuplicateSheet
  source: +get_spreadsheet_1
  sheet: ''
  destination: +get_spreadsheet_2
  as: ''
  private: false

# シートを削除
+delete_sheet_1:
  action>: DeleteSheet
  spreadsheet: +get_spreadsheet_1
  sheetnames: [""]
  private: false
スプレッドシート/スプシ シートを削除する

このページは役に立ちましたか?