Google スプレッドシート + GAS(Google Apps Script)でonEditが2回実行されてしまう

概要 GAS(Google Apps Script)を使って、Google スプレッドシートの編集時に追加処理を行うスクリプトを用意した際に、Google スプレッドシートの編集によって、onEdit関数が2回実行されるケースがありました。 原因と解決策 原因は、スプレッドシートの編集時のトリガーとしてもonEdit関数を選択していることが原因でした。 onEdit関数は予約済みの関数であるため、トリガーの設定を行う必要がありませんでした。 まとめ 同様の事象でお困りの方の参考になりましたら幸いです。

2024年6月28日 · 1 分 · Nakamura

GoogleドライブとGoogle Apps Scriptを用いて匿名のファイルアップローダを作成する

概要 GoogleドライブとGoogle Apps Scriptを用いて匿名のファイルアップローダを作成する機会がありましたので、その備忘録です。 以下の記事などを参考にさせていただきました。 https://qiita.com/v2okimochi/items/06ed1ce7c56a877a1e10 ウェブアプリの作成 まず、以下のURLから、Apps Scriptにアクセスします。 https://script.google.com/ 「新しいプロジェクト」をクリック。 以下のような画面が表示されます。 以下のコードをコピペします。2行目の<Google Driveのアップロード用フォルダのID>について、事前にGoogleドライブでアップロード用のフォルダを作成しておき、そのIDを取得しておいてください。 c f } f } o u u n n r n c c c r 定 s d c e p c a a a o o u e 数 t o t t r t r r r n n s t : G i u o i フ ア 現 s ア s 新 t 新 u F e o r c o ォ f ッ u 在 t t ッ t し o し r G O t n n e n ー o プ p の o プ い m い n o L 関 s ム r ロ l 日 d f ロ c フ F フ o D 数 d H s p か m ー o 時 a o ー u ォ o ォ f g E : o t F r ら B ド a を y l ド s ル l ル o l R G m o o フ l 用 d フ d 用 t ダ d ダ l e _ i e l r c ァ o フ F ォ = e フ o 内 e 名 d I n t S m e イ b ォ o ル r ォ m に r を e D D d ( e 関 s ル ル l ダ n N ル F フ . 戻 r r e ) r 数 s デ = ダ d 名 e a ダ o ァ c り N i = x v : F ー を e に w m 内 l イ r 値 a v . { i o タ f 取 r 使 e に d ル e と m e h c フ r を o 得 用 D 新 e を a し e の < t e ォ m 取 r = a = し r ア t て ; ア G m . ー ( 得 m t い ッ e 返 ッ o l c ム f O D e t フ = プ F す プ o フ r オ o b r ( o ォ ロ i ロ g ァ e ブ r j i ) d ル u ー l ー l イ a ジ m e v ; a ダ p ド e ド e ル t ェ O c e y を l ( 用 を e ク b t A . 作 o f フ D 表 H ト j . p t 成 a o ォ r 示 t を e m p o d r ル i す m 受 c y . S F m ダ v る l け t F g t o B の e O 取 ) i e r l l I の u り l t i d o D ア t 、 { e F n e b ッ p G ; o g r ) プ u o l ( . ; ロ t o d ) c ー F g e ; r ド r l r e 用 o e B a フ m y t ォ F D I e ル i r d F ダ l i ( o の e v F l I ( e O d D ' に L e > i フ D r ' n ァ E ( ; d イ R f e ル _ o x を I l ' ア D d ) ッ ) e ; プ ; r ロ N ー a ド m す e る ) ; 次に、画面左上の「+」ボタンを押して、HTMLを選択します。 ...

2023年5月11日 · 10 分 · Nakamura

What to do when

Overview When creating a large number of files on a shared drive, I encountered an error message “An error has occurred in Google Drive. and the file could not be saved. The cause of the above may be that the file was caught by the shared drive limitation shown below. https://support.google.com/a/answer/7338880?hl=en *The maximum number of items that can be stored on a shared drive The maximum number of items that can be stored on a shared drive is 400,000. This includes files, folders, and shortcuts. * ...

2022年5月9日 · 5 分 · Nakamura

「Google ドライブでエラーが発生しました。」が生じた時の対処方法:共有ドライブのゴミ箱を空にするスクリプト

概要 共有ドライブに対して大量のファイルを作成した際、以下のように「Google ドライブでエラーが発生しました。」が表示され、ファイルを保存できなくなる事象に出会いました。 上記の原因として、以下に示す共有ドライブの制限に引っかかったことが考えられます。 https://support.google.com/a/answer/7338880?hl=ja 共有ドライブに保存できるアイテム数の上限 共有ドライブに保存できるアイテム数は最大 40 万個です。これにはファイル、フォルダ、ショートカットが含まれます。 1 日のアップロードの上限 個々のユーザーがマイドライブおよびすべての共有ドライブにアップロードできるのは、1 日あたり 750 GB までです。 2つ目の「1日のアップロードの上限」に引っかかってしまった場合には、1日待つほかないと思います。 一方、1つ目の「共有ドライブに保存できるアイテム数の上限」について、不要なファイルを削除することで対応することができます。 ただし、単にファイルを削除しただけでは、それらがゴミ箱に残ってしまい、(おそらく)先の制限を解除することができません。そこで、共有ドライブのゴミ箱を空にするスクリプトを探したところ、以下の記事に辿り着きました。 https://stackoverflow.com/questions/57764248/is-there-a-script-to-empty-google-team-drive-trash-related-folders 以下、上記で紹介されているスクリプトの使用方法について説明します。これにより、先述した「共有ドライブに保存できるアイテム数の上限」に引っかかってしまった際、その制限を解除することができます。 共有ドライブのゴミ箱を空にするスクリプトの実行方法 以下のスクリプトをコピペして利用します。 c f } o u n n v w } s c a h t t r i v c f } i } i l a o o f d o o e r n r t } } ( b r n p ( s ( / r t r i t t t o c y D c r e v m i r r l a o r a / a a e y o u a e r n { i t c s k I F n e s . s v c o h d u a ) h l i o e h n e n l { e o = l . s d = c A d g 0 e F ( o . t r = ( ; . i e l l " i g D " i l l ) e e < o s r 削 < o e { . n 共 n = i 除 t g s l g 有 ( { v 対 r ( . o t ド ) d e 象 a i r g h ラ r . の s , e ( イ { i F フ h m { = ブ v i ァ e t o e = の e l イ d r v } I I e ル . a e ) 0 D d s サ l s ( ) > , . イ e h t { " l ズ n e r ; ' i " g d a i s , t [ s n t h i h c ( t ; ] e l o r i . d u p a + i [ d t s + d i e i h ) ) ] I o e { . t n d i e a . d m l l , s A e F r n { r g g ' o s t s m ) h u A . ) p l i p l t o D e r r m t i s s v ; A e l s l ' D : r t i r v u e e s , ' : ' t c r o u r e p } o ) r a ' : ' d r i v e ' , ' s u p p o r t s A l l D r i v e s ' : t r u e , ' q ' : ' t r a s h e d = t r u e ' } まず、以下のURLにアクセスしてください。 ...

2022年5月6日 · 3 分 · Nakamura