Googleフォームを介してアクティビティが入力されたGoogleシートがあります。フィールドの1つは活動日フィールドです。完了後、アクティビティはappendrowを介してレポート目的で別のシートに移動されます。ピボットテーブルの集団を助けるためにGoogle Appsスクリプトは、appendrowを介して追加された行の行番号を必要とするセル数式を設定します。
var cells = [activityDate, title, completionDate, ...];
destsheet.appendRow (cells);
、先のスプレッドシートの列の一つは、下記一般式=Text(A1, "MMMM")
を介して行われる目的をグループ化するための活動の月です。私が持っている問題は、 "行"を完全に埋めることです、私は行先シートに追加された行の行番号を知る必要があります。たとえば、行89を追加すると、行の式を= Text(A89、 "MMMM")に設定できます。私が実行している問題は、appendRowがアトミックな間に、追加された行ではなくワークシートを返すことです。
appendRowの後にgetRangeで行を取得できたのですが、別のユーザーがappendRowとgetRangeの呼び出しの間に行を挿入する可能性があります。私は "=テキスト(Indirect(Address(Row()、1、4))、" MMMM ")"という列の式を変更して問題を解決しました。これは、報告目的のための活動日の適切な形式の月を取得します。スプレッドシートに精通していない人にとって、私のソリューションに使用している式はちょっと混乱します。
アトミックトランザクションでappendRowを取得する方法はありますか?したがって、「行」番号に依存する行のセルを正しく構成できますか?
使用[ロックサービス](https://developers.google.com/apps-script/reference/lock/lock-service) – Cooper