ホーム>source

わかりましたので、setValue()とsetValues()に困惑しているようです それらが何であるかは理解していますが、機能させることができません。値が設定されていないようです! (これは、Googleカレンダーから請求書とスケジュールを生成するためのより大きなスクリプトプロジェクトの一部です。)

ウィズウィズ

「BillPrefix」というフォルダの「Hirer Code」というスプレッドシートの「Invoice」というシートの最初のセルに「Hirer Code」という単語が書き込まれていない理由がわかりません。

ありとあらゆる助けに感謝します!

function Version3() { // STEPXX - First create a copy of the template // Choose the source var RHTemplate = 'MY SHEET ID' var RHCode = "HirerCode" // Use the variable for the Billing Prefix as it should be unique to create the folder. var RHFolder = DriveApp.createFolder("BillPrefix").getId() var RHFolderID = DriveApp.getFolderById(RHFolder); // Now copy the template file var RHgetTemplate = DriveApp.getFileById(RHTemplate); // var RHFileName = (SpreadsheetApp.openById(RHTemplate).rename(RHCode)); var RHFile = RHgetTemplate.makeCopy(RHCode, RHFolderID); var RHss = SpreadsheetApp.open(RHFile); var RHsheetInv = RHss.getSheetByName('Invoice') //.getSheets()[0]; get by sheet index var RHCell = RHsheetInv.getRange(1, 1); RHCell.setValues([RHCode]); debugger }
あなたの答え
  • 解決した方法 # 1

    単一の値を設定する場合は、配列を気にする必要はありません。 sなしでsetValue()を使用します。

    交換:

    <前>ウィズウィズ

    と:

    <前>ウィズウィズ

  • 解決した方法 # 2

    問題はおそらく次元の問題です。設定値は2次元配列を扱います。あなたの例は1次元配列を提供します。

    元の:

    <前>ウィズウィズ

    修正済み:

    <前>ウィズウィズ

  • 解決した方法 # 3

    これらの問題を抱えている他の人のために、私はついにそれをデバッグの異常に結び付けました。デバッグとして実行すると、SOMETIMESでsetValue/setValuesを実行できますが、失敗することもあります。問題なく実行されますが、通常どおり機能を実行するだけです。ユーザーインターフェイスのポップアップボックスに関する同様の問題!

  • 解決した方法 # 4

    コードを停止すると値がシートに書き込まれるため、デバッグモードではsetValues()が非同期で動作するようです。

    var RHCell = RHsheetInv.getRange(1, 1); RHCell.setValues([RHCode]);

関連記事

  • 前へ java - JPAクエリ:サブクエリをグループ化条件に結合する
  • 次へ Is need to change DB in unit test cases - ユニットテストケースでDBを変更する必要があります:python django