Googleドライブ上にある複数のxlsを読み込んで、指定した文字を検索するhtmlをドライブ上で共有したいのですが
この場合どうすればいいのでしょうか?script.google.comとかサッパリでした
ある程度の英語とjavascriptは出来るので「ココ嫁」みたいなリファレンス貼ってくれるだけでも助かります
探検
【MACRO】Google Apps Script 質問スレ【DRIVE】
レス数が950を超えています。1000を超えると書き込みができなくなります。
182デフォルトの名無しさん
2015/03/26(木) 11:07:18.75ID:r/Xr85WG183デフォルトの名無しさん
2015/03/26(木) 13:13:42.53ID:XgHUlE+o184デフォルトの名無しさん
2015/03/26(木) 13:16:41.94ID:XgHUlE+o185デフォルトの名無しさん
2015/03/26(木) 15:18:18.76ID:SuVdMCRs xls読めるの?
186デフォルトの名無しさん
2015/03/26(木) 18:55:43.03ID:r/Xr85WG187デフォルトの名無しさん
2015/03/26(木) 20:07:09.55ID:xZ2N6kXB >>186
xlsxの全文検索をしてみましたが、出来ました。
fullText containsオプションを使えば可能です。
ただし、たけのこという文字がセルに入ってる場合、「たけのこ」ではヒットしますが、「たけ」ではヒットしません。そういう仕様だそうです。以下に完成品をまとめておきましたので、参考にしてみてください。
http://goo. gl/coMk0P
xlsxの全文検索をしてみましたが、出来ました。
fullText containsオプションを使えば可能です。
ただし、たけのこという文字がセルに入ってる場合、「たけのこ」ではヒットしますが、「たけ」ではヒットしません。そういう仕様だそうです。以下に完成品をまとめておきましたので、参考にしてみてください。
http://goo. gl/coMk0P
188182
2015/03/27(金) 00:58:25.79ID:DYcS+Siy 度々すみませんGoogleドライブに
・1.xls〜100.xls
・Data_list.xls
とテキストシートがあって、1-100.xls上で行or選択範囲を指定して、その範囲内のテキストを使ってData_listで検索をし、結果を返すというモノを作りたいのですが
@-1〜100まで全部一々スクリプトエディタで作成しなければならないんでしょうか?使いまわしできます?
A-図形描写+スクリプト割り当てでイベントハンドラ作成する方法以外にシートから関数呼び出す方法はないんでしょうか?
B-図形描写+スクリプト割り当てを1〜100まで毎回作成するの大変なんで使いまわしとかできないんでしょうか?
C-関数の引数に行や選択範囲を指定できますか?
本当に初歩的な質問ばかりですみません
openByUrl(Data_list)で読み込んでforで全部回す方法でmatchやったら検索は出来ました
・1.xls〜100.xls
・Data_list.xls
とテキストシートがあって、1-100.xls上で行or選択範囲を指定して、その範囲内のテキストを使ってData_listで検索をし、結果を返すというモノを作りたいのですが
@-1〜100まで全部一々スクリプトエディタで作成しなければならないんでしょうか?使いまわしできます?
A-図形描写+スクリプト割り当てでイベントハンドラ作成する方法以外にシートから関数呼び出す方法はないんでしょうか?
B-図形描写+スクリプト割り当てを1〜100まで毎回作成するの大変なんで使いまわしとかできないんでしょうか?
C-関数の引数に行や選択範囲を指定できますか?
本当に初歩的な質問ばかりですみません
openByUrl(Data_list)で読み込んでforで全部回す方法でmatchやったら検索は出来ました
189デフォルトの名無しさん
2015/03/27(金) 08:27:15.70ID:XOU4xnaE190デフォルトの名無しさん
2015/03/29(日) 15:09:18.54ID:Kc5qzo13191デフォルトの名無しさん
2015/04/06(月) 19:06:09.55ID:Uo28IzYD script.googleにてディレクトリに存在するファイル全て開いて検索するプロジェクトのgsファイルを作ってるんですが
コード.gsて一度に開けるファイルの数や容量の制限ありますか?
コード.gsて一度に開けるファイルの数や容量の制限ありますか?
192デフォルトの名無しさん
2015/04/07(火) 11:43:06.04ID:Dj35uwLZ ちょっとした質問なんですけどDriveApp.getRootFolder()みたいに共有アイテムにある「textフォルダ」を取得する方法ってないですか?
193デフォルトの名無しさん
2015/04/09(木) 18:24:15.60ID:Rhj0QTuK194デフォルトの名無しさん
2015/04/11(土) 21:16:39.83ID:yuSJQZvz 1.gmailの受信メールをチェック
↓
2.特定タイトルのメールの送信者を抽出しリストアップ
↓
3.別のリストとマッチングさせメール未送信者を特定
↓
4.未送信者に注意メールを送信
GAS初心者なのですが
上記のようなシステムを構築したいと考えています。
1.2.4はGASとスプレッドシートを使えば簡単に実装できそうなのですが
3もGASやappsのみで構築可能でしょうか?
スプレッドシートのマッチングについて
少し調べて見ましたが、明確な回答は見つかりませんでした。
よろしくお願いします。
↓
2.特定タイトルのメールの送信者を抽出しリストアップ
↓
3.別のリストとマッチングさせメール未送信者を特定
↓
4.未送信者に注意メールを送信
GAS初心者なのですが
上記のようなシステムを構築したいと考えています。
1.2.4はGASとスプレッドシートを使えば簡単に実装できそうなのですが
3もGASやappsのみで構築可能でしょうか?
スプレッドシートのマッチングについて
少し調べて見ましたが、明確な回答は見つかりませんでした。
よろしくお願いします。
195デフォルトの名無しさん
2015/04/13(月) 07:45:32.11ID:eHLkbahF196デフォルトの名無しさん
2015/04/14(火) 08:06:25.22ID:VGcTHgGl >>195
ありがとうございます!
ありがとうございます!
197デフォルトの名無しさん
2015/05/20(水) 20:15:39.64ID:L+8WGw0p 最近始めたんだけどこれmydriveにアップしたExcelを読み込む事は出来ないのかな
getDataAsString()でも文字化けしたのしか取得できないし
スプレッドシートに変換すりゃいいんだろうけどそのまま読み込む方法ないのかね
getDataAsString()でも文字化けしたのしか取得できないし
スプレッドシートに変換すりゃいいんだろうけどそのまま読み込む方法ないのかね
198デフォルトの名無しさん
2015/05/21(木) 08:22:41.16ID:nwV8enKl >>197
だったら、文字コードでも指定すればいいんじゃねぇの
だったら、文字コードでも指定すればいいんじゃねぇの
199デフォルトの名無しさん
2015/05/21(木) 08:29:47.62ID:x9iUxaW9 >>198
Excelは文字コード以前に形式違うからstringで取得できない
Excelは文字コード以前に形式違うからstringで取得できない
200デフォルトの名無しさん
2015/05/21(木) 09:50:23.52ID:x9iUxaW9 エクセルはどこでも話題になるけどDriveApp.searchFiles()で一応文章検索はできるから
セルのstring情報はどっかに記録されてる
ただ引き出して扱えるかどうか知らん
セルのstring情報はどっかに記録されてる
ただ引き出して扱えるかどうか知らん
201デフォルトの名無しさん
2015/05/21(木) 10:56:25.53ID:ESp1pCeJ 馬鹿には無理
202デフォルトの名無しさん
2015/05/21(木) 13:26:54.06ID:RCwHiUWn 最高にキモいな
203デフォルトの名無しさん
2015/05/22(金) 12:42:30.36ID:jHm+8nxR204デフォルトの名無しさん
2015/05/23(土) 21:40:53.24ID:P22nVuYt205デフォルトの名無しさん
2015/05/27(水) 08:07:09.69ID:lvaBWQ33 >>204
君はGoogleのドキュメントがろくにメンテされてないこと知ってんの?
それと、GASで使うのにOAuthなんて使わないよw
JavaScriptで使う場合には必要だがそっちだって、OAuth2.0でのコーディングに
関しては別のページにあるし。GASやGoogle APIを弄っている人間とは到底思え
ない発言だなw
君はGoogleのドキュメントがろくにメンテされてないこと知ってんの?
それと、GASで使うのにOAuthなんて使わないよw
JavaScriptで使う場合には必要だがそっちだって、OAuth2.0でのコーディングに
関しては別のページにあるし。GASやGoogle APIを弄っている人間とは到底思え
ない発言だなw
206デフォルトの名無しさん
2015/05/27(水) 11:08:24.77ID:fMt5EoRl > それと、GASで使うのにOAuthなんて使わないよw
ひょ、標準APIとの違いも解らない奴がココに居るのか
ちょっとキミにはこのスレちょっと早い
ひょ、標準APIとの違いも解らない奴がココに居るのか
ちょっとキミにはこのスレちょっと早い
207デフォルトの名無しさん
2015/05/27(水) 14:12:37.86ID:GScIfku9 煽るだけで具体例のない言葉は何の役にも立たねって
ばっちゃが言ってた
ばっちゃが言ってた
208デフォルトの名無しさん
2015/05/27(水) 15:16:08.57ID:jmeRjzK/ 知らないから自演も満足に出来ないんだろうが
煽り方が下手だと思う
煽り方が下手だと思う
209デフォルトの名無しさん
2015/05/27(水) 16:25:43.57ID:smOTLbR3210デフォルトの名無しさん
2015/05/27(水) 16:29:32.25ID:smOTLbR3 >>204
それとお前。
OAuth1.0だから何?そんなもの自分で2.0の実装でも換装すりゃいいだけの
話だろww
馬鹿なの?それとも2.0のコードでも書けとか言ってるわけ?馬鹿には無理だ
から引っ込んでろ
それとお前。
OAuth1.0だから何?そんなもの自分で2.0の実装でも換装すりゃいいだけの
話だろww
馬鹿なの?それとも2.0のコードでも書けとか言ってるわけ?馬鹿には無理だ
から引っ込んでろ
211デフォルトの名無しさん
2015/05/27(水) 20:42:22.92ID:iPQChm+t なんか急にonEditのe.userにメールアドレスが入ってこなくなったんだが
同じ現象の人いる?
同じ現象の人いる?
212デフォルトの名無しさん
2015/05/28(木) 09:53:52.42ID:/8nOg4qQ これで良くね
ttp://stackoverflow.com/questions/26702330/why-does-google-apps-script-return-a-url-rather-than-a-pdf-file-when-i-try-to-cr
ttp://stackoverflow.com/questions/26702330/why-does-google-apps-script-return-a-url-rather-than-a-pdf-file-when-i-try-to-cr
213デフォルトの名無しさん
2015/06/08(月) 08:54:21.97ID:0Vy1Z1yY >>211
そんなのしょっちゅうあるぜ?
session.userなんてメアド取れなくなったりとかね。
Googleって馬鹿だからバグ採りもせずにデプロイしてやがるのでこういうことがGoogle Apps for Workでも起きていてもんだいになってる。
そんなのしょっちゅうあるぜ?
session.userなんてメアド取れなくなったりとかね。
Googleって馬鹿だからバグ採りもせずにデプロイしてやがるのでこういうことがGoogle Apps for Workでも起きていてもんだいになってる。
214デフォルトの名無しさん
2015/06/08(月) 13:38:40.43ID:rJB8iCDI Googleって独りよがりだよな
215デフォルトの名無しさん
2015/06/11(木) 09:07:55.30ID:DJZgiAWM 書式設定を変えるようなスクリプトを作っても反映されないんだけど、
スプレッドシートの既知の問題?
例えば下のスクリプトを実行すると、既に長い文字列が入ってるセルがあっても
折り返してくれない。
(スクリプト実行後、ボタンはちゃんと「テキストの折り返し」になってるし、ボタン押せば折り返す)
function test() {
var sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getRange('A:A');
range.setWrap(true);
}
この問題って、フォームから文字列が入力されても既に書式設定してあるセルで
同じ事が起きるんだけど、地味に困ってる。
スプレッドシートの既知の問題?
例えば下のスクリプトを実行すると、既に長い文字列が入ってるセルがあっても
折り返してくれない。
(スクリプト実行後、ボタンはちゃんと「テキストの折り返し」になってるし、ボタン押せば折り返す)
function test() {
var sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getRange('A:A');
range.setWrap(true);
}
この問題って、フォームから文字列が入力されても既に書式設定してあるセルで
同じ事が起きるんだけど、地味に困ってる。
216デフォルトの名無しさん
2015/06/12(金) 10:07:42.64ID:7lwiQU6T TwitterBotを作成しているのですが
OAuth1 for Apps Script
https://github.com/googlesamples/apps-script-oauth1/blob/master/samples/Twitter.gs
にCONSUMER_KEYとCONSUMER_SECRETを入れてrunを実行しても投稿されません。
ログには Open the following URL and re-run the script
表示されるアドレスにアクセスするとSuccess!と表示されますが投稿されません。
どうしたら投稿できるようにできますか?
OAuth1 for Apps Script
https://github.com/googlesamples/apps-script-oauth1/blob/master/samples/Twitter.gs
にCONSUMER_KEYとCONSUMER_SECRETを入れてrunを実行しても投稿されません。
ログには Open the following URL and re-run the script
表示されるアドレスにアクセスするとSuccess!と表示されますが投稿されません。
どうしたら投稿できるようにできますか?
218デフォルトの名無しさん
2015/06/12(金) 16:05:55.82ID:qp6MkQCv どういたしまして
219デフォルトの名無しさん
2015/06/12(金) 17:28:28.59ID:7lwiQU6T atomのlinkのhrefを取得したいのですがどうすればいいのでしょうか
function kochiRSS() {
var sheet = SpreadsheetApp.getActiveSheet();
var row = 1;
var feedURL = 'http://www.pref.kochi.lg.jp/news/index.atom';
var xml = UrlFetchApp.fetch(feedURL).getContentText();
var document = XmlService.parse(xml);
var root = document.getRootElement();
var atom = XmlService.getNamespace('http://www.w3.org/2005/Atom');
var entries = root.getChildren('entry', atom);
for(i in entries) {
var title = entries[i].getChild('title', atom).getText();
var link = entries[i].getChild('link', atom).getValue();
var updated = entries[i].getChild('updated', atom).getText();
sheet.getRange(row,1).setValue(title);
sheet.getRange(row,2).setValue(link);
sheet.getRange(row,3).setValue(updated);
row++;
}
sheet.sort(3, false);
}
function kochiRSS() {
var sheet = SpreadsheetApp.getActiveSheet();
var row = 1;
var feedURL = 'http://www.pref.kochi.lg.jp/news/index.atom';
var xml = UrlFetchApp.fetch(feedURL).getContentText();
var document = XmlService.parse(xml);
var root = document.getRootElement();
var atom = XmlService.getNamespace('http://www.w3.org/2005/Atom');
var entries = root.getChildren('entry', atom);
for(i in entries) {
var title = entries[i].getChild('title', atom).getText();
var link = entries[i].getChild('link', atom).getValue();
var updated = entries[i].getChild('updated', atom).getText();
sheet.getRange(row,1).setValue(title);
sheet.getRange(row,2).setValue(link);
sheet.getRange(row,3).setValue(updated);
row++;
}
sheet.sort(3, false);
}
220デフォルトの名無しさん
2015/06/12(金) 18:11:48.05ID:qp6MkQCv .getAttribute('href').getValue();
221219
2015/06/12(金) 20:37:23.23ID:RT2PlkdQ 220
できましたどうもありがとうございます。
できましたどうもありがとうございます。
222デフォルトの名無しさん
2015/06/13(土) 03:16:47.88ID:NUKk6CPY どういたしまして
223219
2015/06/13(土) 08:02:49.41ID:YFXshuK4 たびたびすみません。
RSSを取得するプログラムを作っているのですが
RSS2.0は
var items = root.getChild('channel').getChildren('item');
ATOMは
var entries = root.getChildren('entry', atom);
で取得できるのですが
RSS1.0だとitemが<item rdf:about="記事のURL">なため
var items = root.getChildren('item');
では取得できません。
どういう書き方にすれば取得できるようになるのでしょうか?
RSSを取得するプログラムを作っているのですが
RSS2.0は
var items = root.getChild('channel').getChildren('item');
ATOMは
var entries = root.getChildren('entry', atom);
で取得できるのですが
RSS1.0だとitemが<item rdf:about="記事のURL">なため
var items = root.getChildren('item');
では取得できません。
どういう書き方にすれば取得できるようになるのでしょうか?
224デフォルトの名無しさん
2015/06/13(土) 08:38:19.04ID:NUKk6CPY 馬鹿には無理
225デフォルトの名無しさん
2015/06/13(土) 20:19:34.38ID:ZKnt+LAz なんだこいつ
226デフォルトの名無しさん
2015/06/14(日) 06:25:18.68ID:Gz1SNEoH 馬鹿には(回答は)無理
227デフォルトの名無しさん
2015/06/14(日) 06:41:51.88ID:l6qAkUnh 一部変な奴もいるけど気にせずに馬鹿はどんどん質問してくださいな
228デフォルトの名無しさん
2015/06/15(月) 13:48:50.97ID:6FCFdlNB もっとやさしくしてください
229デフォルトの名無しさん
2015/06/15(月) 20:34:44.01ID:TKCLtNo1 正直、DOM系の話題はなしにしたいものだ
DOMの話題ってjsの使い方一辺倒になっちまうから
GASそのものの本質を追究する姿勢が培われなくなってしまう
DOMの話題ってjsの使い方一辺倒になっちまうから
GASそのものの本質を追究する姿勢が培われなくなってしまう
230デフォルトの名無しさん
2015/06/15(月) 20:57:28.70ID:vJyBnBQX GASはハウツー的な日本語ドキュメントが少ないから仕方ないかと
誰かその辺りをまとめてくれると(俺も)助かるんだがなー…(チラッチラッ
誰かその辺りをまとめてくれると(俺も)助かるんだがなー…(チラッチラッ
231デフォルトの名無しさん
2015/06/15(月) 23:47:37.55ID:YPgI+YQd >>223
>RSS1.0だとitemが<item rdf:about="記事のURL">
属性はattributeと言う。
こんな感じかな。
items[0].getAttribute("about","rdf").getValue();
上は未実証なので詳しくはreferenceを参照。
https://developers.google.com/apps-script/reference/xml-service/element#getAttribute(String,Namespace)
>RSS1.0だとitemが<item rdf:about="記事のURL">
属性はattributeと言う。
こんな感じかな。
items[0].getAttribute("about","rdf").getValue();
上は未実証なので詳しくはreferenceを参照。
https://developers.google.com/apps-script/reference/xml-service/element#getAttribute(String,Namespace)
232223
2015/06/17(水) 05:49:31.92ID:pjaGN1aW ありがとうございます。
rdf:aboutのようなのは名前空間というみたいで
XmlService.getNamespaceを指定すると使えるようです。
詳しくはこちらに載っていました。
https://msdn.microsoft.com/ja-jp/library/aa468565.aspx
rdf:aboutのようなのは名前空間というみたいで
XmlService.getNamespaceを指定すると使えるようです。
詳しくはこちらに載っていました。
https://msdn.microsoft.com/ja-jp/library/aa468565.aspx
233デフォルトの名無しさん
2015/06/17(水) 14:14:39.78ID:T4rbUCsj いやここはGASのスレだしw
XMLの基本を鼻高々に解説されても
XMLの基本を鼻高々に解説されても
234デフォルトの名無しさん
2015/06/17(水) 16:12:56.82ID:7KhQ6AFD >>233
わかればよろしい
わかればよろしい
235デフォルトの名無しさん
2015/06/30(火) 15:54:55.56ID:jfSOFpG/ google apps script のウェブアプリケーションの公開するとき
指定したグーグルアカウントだけに利用させるって出来ないんですかい?
共有でそういうのあったんですけど、共有はコード見れるとかそういうのだったんで
指定したグーグルアカウントだけに利用させるって出来ないんですかい?
共有でそういうのあったんですけど、共有はコード見れるとかそういうのだったんで
236デフォルトの名無しさん
2015/06/30(火) 17:35:30.60ID:0T0Q+C6j スレ違いだけどできないはずはないと思うよ
appsにアカウント登録できるはず
appsにアカウント登録できるはず
237デフォルトの名無しさん
2015/07/01(水) 07:45:04.29ID:WrSpGcQO >>235
1) googleアカウントでログインしてるユーザーだけに実行させることが出来る
2) アプリケーション側でどのアカウントで実行されているか把握することが出来る
1) と 2) を組み合わせれば可能
1) googleアカウントでログインしてるユーザーだけに実行させることが出来る
2) アプリケーション側でどのアカウントで実行されているか把握することが出来る
1) と 2) を組み合わせれば可能
238235
2015/07/01(水) 15:27:56.64ID:s1huTgGg 出来たよありがとう
"無ければ作れ"がGASでも通用したとか最高だ
"無ければ作れ"がGASでも通用したとか最高だ
239デフォルトの名無しさん
2015/07/01(水) 15:58:11.31ID:WrSpGcQO おめおめ
240デフォルトの名無しさん
2015/07/04(土) 14:34:59.39ID:PdgAmMn6 GASに初トライしていて問題にブチあたりました。
解決方法があれば教えてください。
■やりたいこと
スプレッドシート内で
外部ページ情報を取得しリアルタイム・もしくはインターバル更新表示しい。
基本は自動更新
■更新条件
スプレッドシートを開いた
スプレッドシートのセルにユーザーから入力があった。
の両方です。
■ためしたこと。
1.=ImportXMLを使って取り込み
単純な目的は果たせるがセルに埋め込むと取得データを加工するにしても限度がある。
また、同じURLを指定したセルが複数ある場合、同じデータなのにアクセスさせるのが無駄
2.GASでImportXML相当のことをしてみる
セルから呼び出せる関数でUrlFetchApp.fetchを使ってみる。
当初の目的は果たせるようになったが、セルの数が多く、
またスクリプト実行テストを繰り返しているとあっというまに1日の呼び出し回数制限に達してしまう(無料アカなので2万回)
3.呼び出し制限に達しないようにするための工夫
URLから取得した情報をプールしておき、前回取得からのインターバル時間を経過したら再取得してキャッシュ更新。
または、キャッシュに存在しないデータを要求された場合もキャッシュ更新。
キャッシュ場所は、自分のスプレッドシート内にcacheシートを生成してそこに書き込んでおく。
4.3までのロジック実装は完了し、スクリプトエディタの関数実行テストまでは正常完了
続きます。
解決方法があれば教えてください。
■やりたいこと
スプレッドシート内で
外部ページ情報を取得しリアルタイム・もしくはインターバル更新表示しい。
基本は自動更新
■更新条件
スプレッドシートを開いた
スプレッドシートのセルにユーザーから入力があった。
の両方です。
■ためしたこと。
1.=ImportXMLを使って取り込み
単純な目的は果たせるがセルに埋め込むと取得データを加工するにしても限度がある。
また、同じURLを指定したセルが複数ある場合、同じデータなのにアクセスさせるのが無駄
2.GASでImportXML相当のことをしてみる
セルから呼び出せる関数でUrlFetchApp.fetchを使ってみる。
当初の目的は果たせるようになったが、セルの数が多く、
またスクリプト実行テストを繰り返しているとあっというまに1日の呼び出し回数制限に達してしまう(無料アカなので2万回)
3.呼び出し制限に達しないようにするための工夫
URLから取得した情報をプールしておき、前回取得からのインターバル時間を経過したら再取得してキャッシュ更新。
または、キャッシュに存在しないデータを要求された場合もキャッシュ更新。
キャッシュ場所は、自分のスプレッドシート内にcacheシートを生成してそこに書き込んでおく。
4.3までのロジック実装は完了し、スクリプトエディタの関数実行テストまでは正常完了
続きます。
241デフォルトの名無しさん
2015/07/04(土) 14:44:48.33ID:PdgAmMn6 4からが問題でして、エディタ内の関数単体テストでは、データ取得・キャッシュシート生成まで問題なく動作しました。
しかし、これの関数をセルから呼び出そうとするとエラーになります。
エラーはシートに対して操作権限がないといわれます。
調べたところセルで関数を呼び出した場合、
var ss = SpreadsheetApp.getActiveSpreadsheet();
var cacheSheet = ss.getSheetByName( g_stocksSheetName );
で取得したシートに対して、作成・修正・削除などの操作が出来ないようです。
つまりセルから呼び出した場合オブジェクトの参照関数しか呼び出しが許可されない?
ss.insertSheet( 'cacheSheet' )
とか
cacheSheet.getRange( 1, 1 ).setValue( new Date() );
もダメでした。
5.イベントハンドラを使ってみる
しょうがないので、書き込み権限を与えてくれそうな仕組みがないかテストしていたところ
onEvent,onOpenなどならいけそうだったので、
onEventから呼び出してみました。
すると、シート作成・データセットまではうまくいきますが、
UrlFetchApp.fetchでエラーになっているらしく、
上流で捉えた例外は
fetch を呼び出す権限がありません
でした。
しかし、これの関数をセルから呼び出そうとするとエラーになります。
エラーはシートに対して操作権限がないといわれます。
調べたところセルで関数を呼び出した場合、
var ss = SpreadsheetApp.getActiveSpreadsheet();
var cacheSheet = ss.getSheetByName( g_stocksSheetName );
で取得したシートに対して、作成・修正・削除などの操作が出来ないようです。
つまりセルから呼び出した場合オブジェクトの参照関数しか呼び出しが許可されない?
ss.insertSheet( 'cacheSheet' )
とか
cacheSheet.getRange( 1, 1 ).setValue( new Date() );
もダメでした。
5.イベントハンドラを使ってみる
しょうがないので、書き込み権限を与えてくれそうな仕組みがないかテストしていたところ
onEvent,onOpenなどならいけそうだったので、
onEventから呼び出してみました。
すると、シート作成・データセットまではうまくいきますが、
UrlFetchApp.fetchでエラーになっているらしく、
上流で捉えた例外は
fetch を呼び出す権限がありません
でした。
242デフォルトの名無しさん
2015/07/04(土) 14:54:35.26ID:PdgAmMn6 6.キャッシュの保存場所
自分に書き込めない場合、どっかに保存できないの?と思い調べてみると
ScriptDb とか言うのがあるみたいですが、サービス終了予定の機能ぽいですし、
Google Cloud SQLとかいうのを使うしかない?有料??
■知りたい事
・1〜6の流れで問題となっているアクセス権を解決できる方法はありますか?
・無理な場合の代替え手法はありますか?
・そもそもアプローチが間違っている、こうしたほうが良いよ。
という感じでうs。
このまま、いろいろ渡り歩いていても遠回りになりそうな予感なので質問してみました。
よろしくお願いします。
自分に書き込めない場合、どっかに保存できないの?と思い調べてみると
ScriptDb とか言うのがあるみたいですが、サービス終了予定の機能ぽいですし、
Google Cloud SQLとかいうのを使うしかない?有料??
■知りたい事
・1〜6の流れで問題となっているアクセス権を解決できる方法はありますか?
・無理な場合の代替え手法はありますか?
・そもそもアプローチが間違っている、こうしたほうが良いよ。
という感じでうs。
このまま、いろいろ渡り歩いていても遠回りになりそうな予感なので質問してみました。
よろしくお願いします。
243デフォルトの名無しさん
2015/07/04(土) 15:38:30.72ID:IUri6wsi >>242
htmlservice + oauth2
htmlservice + oauth2
245デフォルトの名無しさん
2015/07/07(火) 01:32:45.09ID:OGGfcKdI htmlからツイにつぶやくのをやってたら
(>_<)この顔文字が(>_<)こんななってたぶんそのせいででエラー吐くんだけどこれはreplaceすればいいのかな?
こういう表記になる文字ってたくさんあるのかな?
(>_<)この顔文字が(>_<)こんななってたぶんそのせいででエラー吐くんだけどこれはreplaceすればいいのかな?
こういう表記になる文字ってたくさんあるのかな?
246デフォルトの名無しさん
2015/07/07(火) 04:21:52.11ID:FHtVzgus 君にふさわしい板はこっち
http://kanae.2ch.net/php/
http://kanae.2ch.net/php/
247デフォルトの名無しさん
2015/07/07(火) 15:42:58.38ID:5Rsbcn5E >>245
おいてめーそれ「はじめてのホームページビルダー」レベルじゃねぇか
おいてめーそれ「はじめてのホームページビルダー」レベルじゃねぇか
248デフォルトの名無しさん
2015/07/08(水) 23:01:03.10ID:oRYg8bj0 >>245
そういうのはエンコードすべきなんじゃないのか?
そういうのはエンコードすべきなんじゃないのか?
249デフォルトの名無しさん
2015/07/08(水) 23:17:38.40ID:Nj43MlcH250240
2015/07/12(日) 18:50:40.39ID:yhZDzWcx >>243
> >>242
> htmlservice + oauth2
あれから調べてみましたが、これらを使ってどうアプローチしていいか分かりませんでした。
どういうアプローチを取って良いのか、もう少し詳しく教えていただけないでしょうか?
自分が上でやっていてダメだったアプローチは以下のAuthorization modesをみると納得なのですが
https://developers.google.com/apps-script/add-ons/lifecycle
これらの状況の中でどうやって目的を達成していいか分かりませんでした。
Htmlservice, oauth2ということだったので、
外部サイト情報から取得したキャッシュをHtmlにしてGoogleDrive側に保存すればいいのかな?
とか思っていたのですが、
AuthMode.LIMITEDやAuthMode.CUSTOM_FUNCTIONでは他のサービスへのアクセスは
Any services that don’t access user data
とのことで、キャッシュを書き込めないようです。
実際に試してみましたが、スクリプト単体テストではOKでしたが、イベントハンドラから呼び出すとDrive周りの関数で権限がないといわれました。
oauth2に関してはいまいちよく分かりませんでした。
他社サービスIDなどで別サイトのサービスにアクセスする場合などの認証などに使ったりするようですが、
Googleのアカウントで自身にログインして何かをしろという事でしょうか?
どちらにしろ、AuthMode.FULLで行えるような権限を得られないと、
・キャッシュを作るための外部サイトアクセスとコンテンツ取得
・取得したコンテンツから生成したキャッシュデータの保存(シートorファイル)
が実現できないと思うのですが、どうでしょう?
> >>242
> htmlservice + oauth2
あれから調べてみましたが、これらを使ってどうアプローチしていいか分かりませんでした。
どういうアプローチを取って良いのか、もう少し詳しく教えていただけないでしょうか?
自分が上でやっていてダメだったアプローチは以下のAuthorization modesをみると納得なのですが
https://developers.google.com/apps-script/add-ons/lifecycle
これらの状況の中でどうやって目的を達成していいか分かりませんでした。
Htmlservice, oauth2ということだったので、
外部サイト情報から取得したキャッシュをHtmlにしてGoogleDrive側に保存すればいいのかな?
とか思っていたのですが、
AuthMode.LIMITEDやAuthMode.CUSTOM_FUNCTIONでは他のサービスへのアクセスは
Any services that don’t access user data
とのことで、キャッシュを書き込めないようです。
実際に試してみましたが、スクリプト単体テストではOKでしたが、イベントハンドラから呼び出すとDrive周りの関数で権限がないといわれました。
oauth2に関してはいまいちよく分かりませんでした。
他社サービスIDなどで別サイトのサービスにアクセスする場合などの認証などに使ったりするようですが、
Googleのアカウントで自身にログインして何かをしろという事でしょうか?
どちらにしろ、AuthMode.FULLで行えるような権限を得られないと、
・キャッシュを作るための外部サイトアクセスとコンテンツ取得
・取得したコンテンツから生成したキャッシュデータの保存(シートorファイル)
が実現できないと思うのですが、どうでしょう?
251デフォルトの名無しさん
2015/07/12(日) 19:09:03.00ID:slCoB0p4 設定間違えてるに+1
252デフォルトの名無しさん
2015/07/13(月) 17:53:46.10ID:UxTEJ+9t node.js / io.js 動けばいいのにね
253デフォルトの名無しさん
2015/07/15(水) 20:57:05.83ID:70iQnSqB 新たなるオライリー本か?
http://www.amazon.co.jp/dp/B00TN97BE2
http://www.amazon.co.jp/dp/B00TN97BE2
254デフォルトの名無しさん
2015/07/19(日) 04:21:49.78ID:eNaDFGYO 分かる人がいたら教えて下さい
function upload() {
var clientId = '*************';
var imgUrl = 'http://www.google.co.jp/images/srpr/logo11w.png';
var service = getService(); //aouth2のなんか
if (service.hasAccess()) {
var url = 'https://api.imgur.com/3/image';
var response = UrlFetchApp.fetch(url, { //ここでエラーが出る
method: 'post',
headers: {
Authorization: 'Client-ID ' + clientId,
},
data: {
image: imgUrl,
type: 'URL'
}
});
var result = JSON.parse(response.getContentText());
return result;
} else {
こういうエラーが出ます
{"data":{"error":"No image data was sent to the upload api","request":"\/3\/image","method":"POST"},"success":false,"status":400}
どこが間違えてるんでしょうか
imgur apiのページ
https://api.imgur.com/
function upload() {
var clientId = '*************';
var imgUrl = 'http://www.google.co.jp/images/srpr/logo11w.png';
var service = getService(); //aouth2のなんか
if (service.hasAccess()) {
var url = 'https://api.imgur.com/3/image';
var response = UrlFetchApp.fetch(url, { //ここでエラーが出る
method: 'post',
headers: {
Authorization: 'Client-ID ' + clientId,
},
data: {
image: imgUrl,
type: 'URL'
}
});
var result = JSON.parse(response.getContentText());
return result;
} else {
こういうエラーが出ます
{"data":{"error":"No image data was sent to the upload api","request":"\/3\/image","method":"POST"},"success":false,"status":400}
どこが間違えてるんでしょうか
imgur apiのページ
https://api.imgur.com/
255デフォルトの名無しさん
2015/07/19(日) 05:55:09.18ID:EU0ROg42 ttp://www.google.co.jp/images/srpr/logo11w.png
404
The requested URL /images/srpr/logo11w.png'; was not found on this server.
404
The requested URL /images/srpr/logo11w.png'; was not found on this server.
256デフォルトの名無しさん
2015/07/19(日) 06:53:12.05ID:eNaDFGYO 普通に繋がるんですが・・・
というか画像のURLに関しては色々試してます
というか画像のURLに関しては色々試してます
257デフォルトの名無しさん
2015/07/19(日) 07:23:46.52ID:EU0ROg42 さっきはエラってたが
258デフォルトの名無しさん
2015/07/19(日) 13:37:40.69ID:Npxm1YBj259デフォルトの名無しさん
2015/07/19(日) 14:52:50.12ID:Npxm1YBj data: {
type: 'base64',
image: 'hogehoge(base64data)hogehoge'
}
ためしてみたけど
400
Image format not supported, or image is corrupt.
なんぞこれ
type: 'base64',
image: 'hogehoge(base64data)hogehoge'
}
ためしてみたけど
400
Image format not supported, or image is corrupt.
なんぞこれ
260デフォルトの名無しさん
2015/07/19(日) 16:20:37.89ID:MA6NEEKT261デフォルトの名無しさん
2015/07/19(日) 17:02:15.86ID:G63bEDLi262デフォルトの名無しさん
2015/07/19(日) 17:26:45.22ID:eNaDFGYO263デフォルトの名無しさん
2015/07/20(月) 01:12:32.08ID:M+3F+JJV 読んでも全然わかんないや(´・ω・`)
ツイとかはコピペでなんとかなったけどimgurはあんまり見つかんないからやっぱ自力じゃ無理なのかな
ツイとかはコピペでなんとかなったけどimgurはあんまり見つかんないからやっぱ自力じゃ無理なのかな
264デフォルトの名無しさん
2015/07/20(月) 01:28:27.60ID:M+3F+JJV getの方は出来たんだけどなぁ
もうちょっと読んでみよ英語分かんないけど
function getImage(id) {
var service = getService();
if (service.hasAccess()) {
var url = 'https://api.imgur.com/3/image/' + id;
var response = UrlFetchApp.fetch(url, {
method: 'get',
headers: {
Authorization: 'Bearer ' + service.getAccessToken()
}
});
var result = JSON.parse(response.getContentText());
return result;
// Logger.log(result);
} else {
var authorizationUrl = service.getAuthorizationUrl();
Logger.log('Open the following URL and re-run the script: %s',
authorizationUrl);
}
}
もうちょっと読んでみよ英語分かんないけど
function getImage(id) {
var service = getService();
if (service.hasAccess()) {
var url = 'https://api.imgur.com/3/image/' + id;
var response = UrlFetchApp.fetch(url, {
method: 'get',
headers: {
Authorization: 'Bearer ' + service.getAccessToken()
}
});
var result = JSON.parse(response.getContentText());
return result;
// Logger.log(result);
} else {
var authorizationUrl = service.getAuthorizationUrl();
Logger.log('Open the following URL and re-run the script: %s',
authorizationUrl);
}
}
265デフォルトの名無しさん
2015/07/20(月) 04:39:02.07ID:/UvV48hv >>254 のは匿名うp用の認証してるからOAuth2は関係ないね
266デフォルトの名無しさん
2015/07/20(月) 10:41:38.27ID:11U3Dh8m Content-Type: application/json
つけたらでけた
つけたらでけた
267デフォルトの名無しさん
2015/07/20(月) 23:29:34.40ID:M+3F+JJV どこに付ければいいか分からないので適当に色々なところに付けてみましたが出来ませんでした
もう少し詳しくお願いします
もう少し詳しくお願いします
268デフォルトの名無しさん
2015/07/21(火) 20:08:20.82ID:S4WMmXN0 headers: {
Authorization: 'Client-ID ' + clientId,
Content-Type: 'application/json'
},
Authorization: 'Client-ID ' + clientId,
Content-Type: 'application/json'
},
269デフォルトの名無しさん
2015/07/21(火) 22:14:27.88ID:cjPlPdED >>268
そう書くと保存の時に「プロパティ ID の後に : がありません。」ってエラーが出るんですけどなんでだろう
headers: {
Authorization: 'Client-ID ' + clientId,
Content-Type: 'application/json' ←この行
},
そう書くと保存の時に「プロパティ ID の後に : がありません。」ってエラーが出るんですけどなんでだろう
headers: {
Authorization: 'Client-ID ' + clientId,
Content-Type: 'application/json' ←この行
},
270デフォルトの名無しさん
2015/07/21(火) 23:22:00.36ID:cjPlPdED 'Content-Type': にしてみてもダメでした
271デフォルトの名無しさん
2015/07/22(水) 08:36:09.80ID:FlFswPU7 馬鹿には無理
272デフォルトの名無しさん
2015/07/24(金) 07:31:33.29ID:NfS3cn5h もっとやさしくしてください
273デフォルトの名無しさん
2015/07/24(金) 15:37:18.28ID:YFrH4Ww5 やさしくやさしくやさしくね
274デフォルトの名無しさん
2015/07/24(金) 20:21:19.80ID:dvC3Xj8J いとしさとせつなさとこころづよさと
275デフォルトの名無しさん
2015/08/20(木) 11:36:44.28ID:pV6cw7bo 詰んってる
276デフォルトの名無しさん
2015/08/26(水) 18:33:14.63ID:AtwE5MzM277デフォルトの名無しさん
2015/10/15(木) 18:03:33.74ID:bdlPZJI1 py
278デフォルトの名無しさん
2015/10/26(月) 00:51:32.73ID:pJrmvVTd multipartで渡してエラー吐くと思ったらJSONで渡すんだねこれ…
279デフォルトの名無しさん
2015/10/28(水) 22:28:05.44ID:58PwIK9B 独自関数(自作)でbackGroundの色が特定の色の場合にsumする関数をつくりたいんだけど、
引数でバックグラウンドの色ってとりだせるの?
というより、適当に作ったんだけど、スクリプト保存しないと独自関数を使用しているセルが更新されなくて困ってる。
引数でバックグラウンドの色ってとりだせるの?
というより、適当に作ったんだけど、スクリプト保存しないと独自関数を使用しているセルが更新されなくて困ってる。
280デフォルトの名無しさん
2015/11/05(木) 20:42:24.52ID:6t/dd9qY 何でもできるようになってきて
すごくありがたく使わせてもらってるんだけど
実行速度が遅いのは何とかしてほしいなぁ
すごくありがたく使わせてもらってるんだけど
実行速度が遅いのは何とかしてほしいなぁ
281デフォルトの名無しさん
2015/11/06(金) 18:30:44.33ID:F7EIvq3A 遅いね
あとREMOTE_ADDRとか取れなかった気がするのも痛い
あとREMOTE_ADDRとか取れなかった気がするのも痛い
282デフォルトの名無しさん
2015/11/18(水) 03:36:46.11ID:CE5+T1br スプレッドシートの0:00とか時間表記でのものを時と分に分けて数値として扱いたくて
getRangeで2次元配列で読み込んで時間の部分をsplit使って:で分けました
でもSSの時間部分の書式が日付になるとWed Nov 18 2015 00:00〜みたいなDateで読み込まれるし
書式なしテキストにするとStringになって数値として扱えないんです(8:00だったら8と00になって足すと800になる)
どうすればいいでしょうか?
getRangeで2次元配列で読み込んで時間の部分をsplit使って:で分けました
でもSSの時間部分の書式が日付になるとWed Nov 18 2015 00:00〜みたいなDateで読み込まれるし
書式なしテキストにするとStringになって数値として扱えないんです(8:00だったら8と00になって足すと800になる)
どうすればいいでしょうか?
283デフォルトの名無しさん
2015/11/18(水) 05:27:10.31ID:2k4RwPb/ あきらめる
284デフォルトの名無しさん
2015/11/18(水) 07:26:46.79ID:nLopjri3285デフォルトの名無しさん
2015/11/19(木) 00:23:18.88ID:gRbsU57g *60は?
286デフォルトの名無しさん
2015/11/20(金) 06:21:50.68ID:bl9/kj42 ごめんなさい
自己解決しました
Number()ってのをつかったらいけました
自己解決しました
Number()ってのをつかったらいけました
287デフォルトの名無しさん
2015/11/27(金) 15:20:14.09ID:c/N8jVfb 火事お見舞い申し上げます。
288デフォルトの名無しさん
2015/12/03(木) 15:49:15.48ID:5y9yFaIO test
289デフォルトの名無しさん
2015/12/16(水) 14:14:14.45ID:kHfROXFw グローバルでconstを使うと、
「TypeError: 定数 **** の再宣言。」
とエラーが出るのですが、グローバルではconstは使えないのでしょうか?
「TypeError: 定数 **** の再宣言。」
とエラーが出るのですが、グローバルではconstは使えないのでしょうか?
290デフォルトの名無しさん
2015/12/17(木) 12:07:32.69ID:Szn4FINI >再宣言
291デフォルトの名無しさん
2015/12/19(土) 21:20:25.74ID:0J9ouBIM シート上のデータをまとめてカレンダーに移したいのですが
GASからbatch requestで処理できますか?
もしできるなら似たような事例でコードがわかるものを教えてください
GASからbatch requestで処理できますか?
もしできるなら似たような事例でコードがわかるものを教えてください
292デフォルトの名無しさん
2015/12/20(日) 11:31:59.34ID:8RLYRFXT 出来ますよ
293デフォルトの名無しさん
2015/12/20(日) 16:16:42.06ID:8RLYRFXT どうやんの
294デフォルトの名無しさん
2015/12/21(月) 12:08:37.40ID:Hf5X7byl >>291
CalendarApp使えばいいじゃん
CalendarApp使えばいいじゃん
295デフォルトの名無しさん
2015/12/22(火) 14:35:21.60ID:Cg7y4/KF >>290
すみません、説明が不足していました。
constで定義した名前は他の場所では宣言していません。
ただ、グローバルでconstを使うと、再宣言していない定数でも
「TypeError: 定数 **** の再宣言。」とエラーになってしまいます。
(function内などのスコープではconstは普通に使えています。)
constでなくvarを使うと再宣言のエラーは出ません。
また、const指定する定数の名前は何にしても再宣言のエラーが出ます。
constの使い方が間違っているのかもしれませんが、何かおかしい点があれば教えていただけないでしょうか?
すみません、説明が不足していました。
constで定義した名前は他の場所では宣言していません。
ただ、グローバルでconstを使うと、再宣言していない定数でも
「TypeError: 定数 **** の再宣言。」とエラーになってしまいます。
(function内などのスコープではconstは普通に使えています。)
constでなくvarを使うと再宣言のエラーは出ません。
また、const指定する定数の名前は何にしても再宣言のエラーが出ます。
constの使い方が間違っているのかもしれませんが、何かおかしい点があれば教えていただけないでしょうか?
296デフォルトの名無しさん
2015/12/22(火) 15:36:52.19ID:WRvltcSm すごく初歩的な質問だと思うのですが原因が解りません
どなたか教えて下さい
下記サイトを参考にスクリプトを作成したのですが
http://chaika.hatenablog.com/entry/2015/09/03/143622
デバッグすると一番最初の
var ss = evt.source.getActiveSheet();
の箇所で
TypeError: undefined からプロパティ「source」を読み取れません。(行 3、ファイル「コード」)
と出てしまいます
ググったところ、スクリプトの作成元が間違っていると出たりするようですが
参考サイトではスプレッドシートから作成、とあるので間違いではないと思います
かといって何が問題なのか解りません
どなたか教えて下さい
下記サイトを参考にスクリプトを作成したのですが
http://chaika.hatenablog.com/entry/2015/09/03/143622
デバッグすると一番最初の
var ss = evt.source.getActiveSheet();
の箇所で
TypeError: undefined からプロパティ「source」を読み取れません。(行 3、ファイル「コード」)
と出てしまいます
ググったところ、スクリプトの作成元が間違っていると出たりするようですが
参考サイトではスプレッドシートから作成、とあるので間違いではないと思います
かといって何が問題なのか解りません
297デフォルトの名無しさん
2015/12/23(水) 08:28:53.59ID:2F8TsTF+ 3. エディタのリソースをクリックして、**現在のプロジェクトのトリガー**を選択
4. 実行をonEditEvent、イベントをスプレッドシートから・編集時 にして保存
4. 実行をonEditEvent、イベントをスプレッドシートから・編集時 にして保存
298デフォルトの名無しさん
2015/12/23(水) 13:31:42.44ID:LnNJH8Hn >>297
296です
その設定はやってあります
再度確認しましたがその通りになっています
ですが、デバッグすると296の通りです
https://i.gyazo.com/196e454d6eee012351e550aa5cbf3cd3.png
296です
その設定はやってあります
再度確認しましたがその通りになっています
ですが、デバッグすると296の通りです
https://i.gyazo.com/196e454d6eee012351e550aa5cbf3cd3.png
299デフォルトの名無しさん
2015/12/24(木) 01:20:26.04ID:Icnst7JF 関数指定してデバッグボタン押しただけとか?
まさかなー
まさかなー
300デフォルトの名無しさん
2015/12/24(木) 16:49:29.65ID:4YM2CMve あるある
301デフォルトの名無しさん
2015/12/24(木) 20:07:56.13ID:Dg+ThN48302デフォルトの名無しさん
2015/12/24(木) 21:14:24.02ID:Icnst7JF いや、俺もトリガーの機能をここのやり取りで知ったぐらいだけど、
デバッグボタンを押すだけだったら
onEditEvent();
と呼び出されるだけじゃない
evtがundefinedなのはそのせいかなと思って
実際どうなん?
正式なやり方はしらんけど、Loggerでトリガーが起動された時に
どんなオブジェクトが渡されてくるかを調べる
そういうオブジェクトを自力で用意してonEditEventに渡す関数を作成する
その関数をデバッグモードで起動
とかするんじゃないのかな
ググってみればやっている人いるかも
デバッグボタンを押すだけだったら
onEditEvent();
と呼び出されるだけじゃない
evtがundefinedなのはそのせいかなと思って
実際どうなん?
正式なやり方はしらんけど、Loggerでトリガーが起動された時に
どんなオブジェクトが渡されてくるかを調べる
そういうオブジェクトを自力で用意してonEditEventに渡す関数を作成する
その関数をデバッグモードで起動
とかするんじゃないのかな
ググってみればやっている人いるかも
303デフォルトの名無しさん
2016/01/31(日) 12:12:27.01ID:Y0j0ifuu とりあえず、「Hello,World」から始めようと思ってやってみたんですが、
「Cannot call Browser.msgBox() from this context;
have you tried Logger.log() instead? (line 1, file "helloworld")」
とエラーがでていきなり動きません。
エラー内容で検索してみたのですが、
同様のケースは見つからず困っています。
原因は何なのでしょう?
ソースは以下の通りです。↓
function myFunction() {
Browser.msgBox("Hello World!");
}
「Cannot call Browser.msgBox() from this context;
have you tried Logger.log() instead? (line 1, file "helloworld")」
とエラーがでていきなり動きません。
エラー内容で検索してみたのですが、
同様のケースは見つからず困っています。
原因は何なのでしょう?
ソースは以下の通りです。↓
function myFunction() {
Browser.msgBox("Hello World!");
}
304デフォルトの名無しさん
2016/01/31(日) 12:40:01.06ID:35YTNVlr スプレッドシートで やったら普通に動いたよ
this contextとある様にどんな状況でスクリプトを実行しているかが問題だと思う
this contextとある様にどんな状況でスクリプトを実行しているかが問題だと思う
305デフォルトの名無しさん
2016/01/31(日) 19:52:12.09ID:iHBYUhz2 >>303
そもそも、Browser.msgBoxってスプレッドシートでしか使えませんよ。
なので、普通は例えば
var ui = SpreadsheetApp.getUi();
ui.alert(“helllo world”);
です。uiのgetUiの部分をDocumentApp.getUiにすればドキュメントでも
同じように使えます。Browser.msgBoxは現在は非推奨ですよ。
そもそも、Browser.msgBoxってスプレッドシートでしか使えませんよ。
なので、普通は例えば
var ui = SpreadsheetApp.getUi();
ui.alert(“helllo world”);
です。uiのgetUiの部分をDocumentApp.getUiにすればドキュメントでも
同じように使えます。Browser.msgBoxは現在は非推奨ですよ。
306デフォルトの名無しさん
2016/02/01(月) 15:04:44.00ID:C4njzqYk >>303
> from this context
> from this context
307デフォルトの名無しさん
2016/02/01(月) 17:37:08.92ID:zFO6PW8k308デフォルトの名無しさん
2016/02/29(月) 07:51:01.35ID:tfVkN3NW インスタのAPIで色々しようと思ったけどoauth2が全然分かんないや
gasでインスタapi扱い方書いてるサイトとかないだろうか?
gasでインスタapi扱い方書いてるサイトとかないだろうか?
309デフォルトの名無しさん
2016/03/16(水) 16:45:59.48ID:AoxyQu12 現在、Google DriveをAPI経由で使うための勉強をしています。
[root]
+[個人的なフォルダ]
+[公開している共有しているフォルダ]
このような構成で、API経由で両フォルダ上にファイルの読み書きを想定しています。
ひの際に使うアクセストークンが知られてしまうと
だれでも両フォルダのの中身をいじることができるようになってしまいます。
そこで質問なのですが、「公開している共有しているフォルダ」の操作だけを
許可するトークンは発行できるのでしょうか。
ひとつユーザを作って「公開している共有しているフォルダ」を共有し
そのユーザでトークンを発行すれば期待どおりになるということはわかったのですが、
お金を削減したいので、ひとつの特権管理者ユーザだけで実現したいのです。
お詳しい方いらっしゃいましたら、どうか教えて下さい。
[root]
+[個人的なフォルダ]
+[公開している共有しているフォルダ]
このような構成で、API経由で両フォルダ上にファイルの読み書きを想定しています。
ひの際に使うアクセストークンが知られてしまうと
だれでも両フォルダのの中身をいじることができるようになってしまいます。
そこで質問なのですが、「公開している共有しているフォルダ」の操作だけを
許可するトークンは発行できるのでしょうか。
ひとつユーザを作って「公開している共有しているフォルダ」を共有し
そのユーザでトークンを発行すれば期待どおりになるということはわかったのですが、
お金を削減したいので、ひとつの特権管理者ユーザだけで実現したいのです。
お詳しい方いらっしゃいましたら、どうか教えて下さい。
310デフォルトの名無しさん
2016/03/18(金) 22:40:22.81ID:Q3hcmZkc >>309
googleアカウントでログインさせろ
googleアカウントでログインさせろ
311デフォルトの名無しさん
2016/03/21(月) 20:12:50.73ID:49NnzOUU312デフォルトの名無しさん
2016/03/21(月) 20:13:28.35ID:49NnzOUU ScriptAppだった。
313デフォルトの名無しさん
2016/04/10(日) 21:58:42.74ID:q/cDt/0h GASのWebアプリケーションで質問です。
doGetで受けたパラメーターは
e.parameter.xxxで取得できますが
これをクライアントに渡す方法で悩んでます。
今はdoGetで受け取ったらUsetCacheに預けて
html(template)側で<? ?>を使って取り出しています。
初心者ながら、これがスマートじゃない気がして、
違和感を拭いきれないのです。
スマートな方法を教えてください。
doGetで受けたパラメーターは
e.parameter.xxxで取得できますが
これをクライアントに渡す方法で悩んでます。
今はdoGetで受け取ったらUsetCacheに預けて
html(template)側で<? ?>を使って取り出しています。
初心者ながら、これがスマートじゃない気がして、
違和感を拭いきれないのです。
スマートな方法を教えてください。
314デフォルトの名無しさん
2016/05/01(日) 16:22:45.99ID:tKi6j9CT 匿名通信(Tor、i2p等)ができるファイル共有ソフトBitComet(ビットコメット)みたいな、
BitTorrentがオープンソースで開発されています
言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか?
Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします
https://twitter.com/Lyrise_al
ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw
The Covenant Project
概要
Covenantは、純粋P2Pのファイル共有ソフトです
目的
インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します
特徴
Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW)
接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です
DHTにはKademlia + コネクションプールを使用します
UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります)
検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません
17
BitTorrentがオープンソースで開発されています
言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか?
Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします
https://twitter.com/Lyrise_al
ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw
The Covenant Project
概要
Covenantは、純粋P2Pのファイル共有ソフトです
目的
インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します
特徴
Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW)
接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です
DHTにはKademlia + コネクションプールを使用します
UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります)
検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません
17
315デフォルトの名無しさん
2016/05/02(月) 15:16:04.56ID:aR8AOrvI YahooAPIのスレは無い?
316デフォルトの名無しさん
2016/05/27(金) 20:19:53.53ID:wEIQ/dS/ Google Apps Scriptって重くね?
かなり処理量すくないスクリプト書いたんだけどモッサリしてる。
起動が遅いだけなのかなぁ。
かなり処理量すくないスクリプト書いたんだけどモッサリしてる。
起動が遅いだけなのかなぁ。
317デフォルトの名無しさん
2016/05/28(土) 11:45:02.02ID:YkPoIoOS 超遅いよ
318デフォルトの名無しさん
2016/05/28(土) 11:46:40.70ID:YkPoIoOS コード更新後最初にアクセスしたときにプロセスが立ち上がる感じで
何度かアクセスするといくつかのプロセスが立ち上がるので
最初の数回は全部遅い感じがするが
しばらくすると速くなってくる
ただしプロセスのキャッシュ有効期限が過ぎるとまた最初からなので遅くなったり
何度かアクセスするといくつかのプロセスが立ち上がるので
最初の数回は全部遅い感じがするが
しばらくすると速くなってくる
ただしプロセスのキャッシュ有効期限が過ぎるとまた最初からなので遅くなったり
319デフォルトの名無しさん
2016/06/13(月) 11:51:06.87ID:0qOmRg0P 質問です。
スプレッドシート内にいくつかの図形を配置してるんですけど
セルの値が編集された時、一個の図形(地図画像)を
更新(画像削除→画像再配置)したいです。
今は画像を削除→画像作成script と手作業でしています。
この作業をscripで出来ますでしょうか?
スプレッドシート内にいくつかの図形を配置してるんですけど
セルの値が編集された時、一個の図形(地図画像)を
更新(画像削除→画像再配置)したいです。
今は画像を削除→画像作成script と手作業でしています。
この作業をscripで出来ますでしょうか?
320デフォルトの名無しさん
2016/06/13(月) 15:00:26.33ID:zgrawcOE 削除しなくても更新される
321デフォルトの名無しさん
2016/06/13(月) 20:58:26.01ID:EAqpGAx8 google siteってjavascript使えなくて、代わりにGAS使えってことなの?
322デフォルトの名無しさん
2016/06/17(金) 23:25:49.12ID:ZmH+ZAWf323デフォルトの名無しさん
2016/06/18(土) 14:05:20.70ID:AGMP56Qn js埋めても変換されて出力されるって話では
324デフォルトの名無しさん
2016/07/03(日) 05:32:47.99ID:AkQnhWCl325デフォルトの名無しさん
2016/07/03(日) 05:33:09.52ID:AkQnhWCl >>323
サニタイズされて無効化されますよ
サニタイズされて無効化されますよ
326デフォルトの名無しさん
2016/07/26(火) 19:17:35.47ID:SrT4PCno 実行している自分自身のFile IDを取得するにはどうしたらいいでしょうか
327326
2016/07/28(木) 10:11:10.32ID:LxRDdK5b 自己解決しました、やりたかったのは同じソースでも実行するfile idによって動作を変えたかった、なんですが、
ローカルで開発してgapps pushするときにうまく切り替えるようにしました、、、
ローカルで開発してgapps pushするときにうまく切り替えるようにしました、、、
328デフォルトの名無しさん
2016/07/28(木) 19:04:49.94ID:O8Vfrh0P FileIDかどうかは知らんけどデプロイして変わったのを知りたいなら
AppVersionみたいなのは実行中に取れた気がする
(管理画面に表示されるやつと同じもの)
AppVersionみたいなのは実行中に取れた気がする
(管理画面に表示されるやつと同じもの)
329デフォルトの名無しさん
2016/08/05(金) 07:48:44.14ID:OmPlANC2 質問するスレ間違えてたみたいなのでここで改めて質問させてください
http://hesonogoma.com/stocks/japan-all-stock-prices.html
この株価データサイトのデータを定期的にスプレッドシートに表示させたくて
ここ数ヶ月悩んでます
1
サイト下部にある Copy to Clipboad からコピーしてシートに貼り付ける
というスクリプトは可能ですか?出来るならどうすればいいのでしょうか?
2
CSVファイルをダウンロード
本来はこのやり方を調べていました。が、flashで表示されているのでurlが判らず
お手上げ状態に・・
1が無理なら2を何とかしたいと思っております
http://hesonogoma.com/stocks/japan-all-stock-prices.html
この株価データサイトのデータを定期的にスプレッドシートに表示させたくて
ここ数ヶ月悩んでます
1
サイト下部にある Copy to Clipboad からコピーしてシートに貼り付ける
というスクリプトは可能ですか?出来るならどうすればいいのでしょうか?
2
CSVファイルをダウンロード
本来はこのやり方を調べていました。が、flashで表示されているのでurlが判らず
お手上げ状態に・・
1が無理なら2を何とかしたいと思っております
330デフォルトの名無しさん
2016/08/05(金) 12:12:46.89ID:LJe/qM3f 課金が必要
331デフォルトの名無しさん
2016/08/05(金) 12:16:56.28ID:LJe/qM3f っつーか PritView でよくね
ただの html 取れるぞ
ただの html 取れるぞ
332329
2016/08/06(土) 08:04:08.54ID:2dv1pXxg >>331
レス有難うございます。PrintViewでどうにかできそうですか!
でもどうすればいいか解らないレベルなので
とりあえず図書館でjavascriptの本を借りてきました
「はじめに」
読んでるうちに寝てもうたw
レス有難うございます。PrintViewでどうにかできそうですか!
でもどうすればいいか解らないレベルなので
とりあえず図書館でjavascriptの本を借りてきました
「はじめに」
読んでるうちに寝てもうたw
333329
2016/08/06(土) 08:13:37.42ID:2dv1pXxg ちなみに>329の2を試してみたときのコードが
function getCsvSample() {
var folderId = '***********';
var destfolder = DriveApp.getFolderById(folderId);
var date = "2016-08-04";
var response = UrlFetchApp.fetch("http://hesonogoma.com/stocks/media/swf/copy_csv_xls_pdf.swf");
destfolder.createFile(date + '.csv', response.getContentText('Shift_JIS'));
}
です。拾ってきたコードをいじって実行したら
謎の文字化け集団が襲ってきました (ここで心折れる)
function getCsvSample() {
var folderId = '***********';
var destfolder = DriveApp.getFolderById(folderId);
var date = "2016-08-04";
var response = UrlFetchApp.fetch("http://hesonogoma.com/stocks/media/swf/copy_csv_xls_pdf.swf");
destfolder.createFile(date + '.csv', response.getContentText('Shift_JIS'));
}
です。拾ってきたコードをいじって実行したら
謎の文字化け集団が襲ってきました (ここで心折れる)
334デフォルトの名無しさん
2016/08/10(水) 23:27:34.29ID:U9v+Tybh GASでスクレイピングしたいんですが、UrlFetchAppで取得したHTML(XMLじゃない)をDOM化するのってできますでしょうか?
正規表現で必要なところを取ってくるのは心が折れそうなので、セレクタで処理したいです。
正規表現で必要なところを取ってくるのは心が折れそうなので、セレクタで処理したいです。
335デフォルトの名無しさん
2016/08/11(木) 11:55:28.49ID:v2n9djjr OK
336デフォルトの名無しさん
2016/08/11(木) 16:34:55.39ID:qVxIjH10337329
2016/08/13(土) 07:36:05.54ID:VdLmMpzK338デフォルトの名無しさん
2016/08/13(土) 17:13:54.48ID:byPJKfY1 GAS関係なくね?
339デフォルトの名無しさん
2016/08/23(火) 14:00:18.41ID:SYSHEBtV >>329
CSVならGASでドライブに1回保存してからインポートすれば?
次の実行時にドライブAPIでファイル消せば残らんし
もしくはこれ
http://qiita.com/ms32/items/7e180c1c1d00fa8df647
>>334
parserつかえ
http://qiita.com/fireowl11/items/e703e35073b600528e7c
CSVならGASでドライブに1回保存してからインポートすれば?
次の実行時にドライブAPIでファイル消せば残らんし
もしくはこれ
http://qiita.com/ms32/items/7e180c1c1d00fa8df647
>>334
parserつかえ
http://qiita.com/fireowl11/items/e703e35073b600528e7c
340デフォルトの名無しさん
2016/08/24(水) 01:12:18.88ID:dEIn8nhr GASでgoogleAPIを叩いてgmailの下書きを作成するものを作ったのですが、
これを毎日作成(雛形をコピー)するスプレッドシードで使いたいと思っています。
スプレッドシートに書いてコピーすると、gAPIの紐付けプロジェクトが変わっているので設定しなおさなければ使えず、困っています。
スプレッドシートをコピーして、シート上のボタンを押したらすぐに下書きを作れる状態を作りたいのですが、どのような方法がありますか?
これを毎日作成(雛形をコピー)するスプレッドシードで使いたいと思っています。
スプレッドシートに書いてコピーすると、gAPIの紐付けプロジェクトが変わっているので設定しなおさなければ使えず、困っています。
スプレッドシートをコピーして、シート上のボタンを押したらすぐに下書きを作れる状態を作りたいのですが、どのような方法がありますか?
341デフォルトの名無しさん
2016/08/24(水) 09:46:43.51ID:nL2g9QDB >>340
GASのGmailAppでダメ?
ttp://qiita.com/minanami/items/87641f09192be1b5010b
個人的にはフォームから入力させた方がGUI的にいいと思うけど
スプレッドシートに保存したいならその後GASで自動追加させとけばいいし
GASのGmailAppでダメ?
ttp://qiita.com/minanami/items/87641f09192be1b5010b
個人的にはフォームから入力させた方がGUI的にいいと思うけど
スプレッドシートに保存したいならその後GASで自動追加させとけばいいし
342デフォルトの名無しさん
2016/08/24(水) 15:58:08.87ID:Ku8YOB4B >>340
ライブラリ化する
ライブラリ化する
343デフォルトの名無しさん
2016/08/25(木) 08:04:24.21ID:Y3c8VA1Y344デフォルトの名無しさん
2016/08/25(木) 23:18:14.53ID:5XLt8Aa8345デフォルトの名無しさん
2016/08/27(土) 08:39:19.05ID:m8PsOLXX346334
2016/08/27(土) 11:42:11.09ID:RucMLpGl347デフォルトの名無しさん
2016/09/28(水) 22:05:17.24ID:eXjFddOW ここ最近CalendarAppのアクセス頻度でエラーが出るようになった
Googleはアナウンスなしで仕様変更してくるのやめてほしい
Googleはアナウンスなしで仕様変更してくるのやめてほしい
348デフォルトの名無しさん
2016/10/19(水) 12:06:30.27ID:r6QG4f4p G Suite ω
349デフォルトの名無しさん
2016/10/19(水) 18:25:48.15ID:V4/PZwvc 株価のサイトにはNASDAQとかもあるのか
このJSONデータが無料ってすごいな
このJSONデータが無料ってすごいな
350デフォルトの名無しさん
2016/10/22(土) 17:05:09.77ID:O48rD9qT >>347
ほんそれ
ほんそれ
351デフォルトの名無しさん
2016/11/25(金) 23:29:15.59ID:dTj7tfXq プロジェクトの.gsファイルって並び替えってできないんですか?
352デフォルトの名無しさん
2016/12/13(火) 18:03:00.36ID:x2U1jQSF google sitesとスプレッドシートとの連携について教えて下さい。
google sitesで作成したページ(AAAについての確認とします)上に個人名でいくつかの
CK BOXがあります。
----------------------------
<AAAについての確認>
□Aさん
□Bくん
□Cちゃん
□Dちゃん
□Eさん
送信
----------------------------
いくつかのCK BOXにCKが入っているとして”送信”を押したら次の様にスプレッドシートを操作する方法を
教えて下さい。
1. googleドライブ上の指定されたスプレッドシート内に<AAAについての確認>というシートが作成される。
2. 1で作成されたシートにAさんからEさんまでのCK BOX STATUSを記録する
3. 送信した日付も記録する
目的としては、家族内情報共有ホームページを作成したいです。
Googleサイトが無償でホームページが作成できるとのことでGoogleサイトでのこの内容の動きが
出来るか教えていただきたいです。
google sitesで作成したページ(AAAについての確認とします)上に個人名でいくつかの
CK BOXがあります。
----------------------------
<AAAについての確認>
□Aさん
□Bくん
□Cちゃん
□Dちゃん
□Eさん
送信
----------------------------
いくつかのCK BOXにCKが入っているとして”送信”を押したら次の様にスプレッドシートを操作する方法を
教えて下さい。
1. googleドライブ上の指定されたスプレッドシート内に<AAAについての確認>というシートが作成される。
2. 1で作成されたシートにAさんからEさんまでのCK BOX STATUSを記録する
3. 送信した日付も記録する
目的としては、家族内情報共有ホームページを作成したいです。
Googleサイトが無償でホームページが作成できるとのことでGoogleサイトでのこの内容の動きが
出来るか教えていただきたいです。
353デフォルトの名無しさん
2016/12/13(火) 21:30:54.00ID:mRmuTzdU フォームの名前を<AAAについての確認>とすればいい。
354デフォルトの名無しさん
2016/12/14(水) 13:19:44.27ID:UzzFPJML CK BOX
って何かと思った
って何かと思った
355デフォルトの名無しさん
2016/12/17(土) 01:48:09.89ID:3C8QRPXl GASであるサイトをスクレイピングしたいけど、ログインしないと情報が取得できない。
クッキーをセットしたりすればログインしてアクセスできるけど、それってセキュリティ的に危険かな?
クッキーをセットしたりすればログインしてアクセスできるけど、それってセキュリティ的に危険かな?
356デフォルトの名無しさん
2016/12/19(月) 23:51:02.67ID:Hch485Lz GASでスプレッドシートをいじろうと思ってるのですか、まず有効なスプレッドシートを選択してくださいと。と表示されてできません。なにがダメなのでしょうか。下記のようにやっています。
var ss = SpreadsheetApp.OpenById("");
var sheet = ss.getSheetByName("");
SpreadsheetApp.setActiveSheet(sheet);
var ss = SpreadsheetApp.OpenById("");
var sheet = ss.getSheetByName("");
SpreadsheetApp.setActiveSheet(sheet);
357デフォルトの名無しさん
2016/12/20(火) 12:59:03.44ID:lAXr92yw IDは?
358デフォルトの名無しさん
2016/12/20(火) 19:57:35.71ID:ktde9hau oops
359デフォルトの名無しさん
2016/12/21(水) 00:25:00.04ID:nYEPRmnr ID、シート名ともにあってます…
スプレッドシートからスクリプトエディタを使わないとできないのでしょうか?今は別にスクリプトファイルを作ってやってます
スプレッドシートからスクリプトエディタを使わないとできないのでしょうか?今は別にスクリプトファイルを作ってやってます
360デフォルトの名無しさん
2016/12/21(水) 08:27:21.58ID:h8+/QyVK >>356
”→'
”→'
361デフォルトの名無しさん
2016/12/22(木) 18:37:45.76ID:0Tg51mYJ362デフォルトの名無しさん
2016/12/22(木) 18:40:37.70ID:0Tg51mYJ363デフォルトの名無しさん
2016/12/22(木) 23:50:12.42ID:TIDq1bhf >>356
試してはないけど、まずアクティブなシート取得しないとエラるっぽい
http://nevernoteit1419.blogspot.jp/2012/01/blog-post_569.html?m=1
https://developers.google.com/apps-script/reference/spreadsheet/spreadsheet-app#setActiveSheet(Sheet)
試してはないけど、まずアクティブなシート取得しないとエラるっぽい
http://nevernoteit1419.blogspot.jp/2012/01/blog-post_569.html?m=1
https://developers.google.com/apps-script/reference/spreadsheet/spreadsheet-app#setActiveSheet(Sheet)
364デフォルトの名無しさん
2016/12/27(火) 01:28:56.39ID:tIGH6DEG みなさんありがとうございました!
Var SS = SpreadsheetApp.openById("");
Var sheet = SS.getSheetByName("");
SpreadsheetApp.getActivesheet ();
でエラー出ずにやることができました
Var SS = SpreadsheetApp.openById("");
Var sheet = SS.getSheetByName("");
SpreadsheetApp.getActivesheet ();
でエラー出ずにやることができました
365デフォルトの名無しさん
2016/12/27(火) 14:37:37.38ID:6KX94UiV sheetが使われてない
366デフォルトの名無しさん
2017/01/08(日) 20:32:30.74ID:BBb65MXo GASでローカルのtxt、たとえばc:\\test.txtなんかをスプレッドシートに展開したいのだけれど
csvを展開するスクリプト(https://github.com/prog-mitsu/importCsv)
をいじくりまわしてもどうもうまくいかない
このスクリプトだと、フォームが表示されるのだけれど
フォームの表示なしで、固定のテキストファイル(たとえばc:\\test.txt)を展開することって
GASではむりなんかいな?
csvを展開するスクリプト(https://github.com/prog-mitsu/importCsv)
をいじくりまわしてもどうもうまくいかない
このスクリプトだと、フォームが表示されるのだけれど
フォームの表示なしで、固定のテキストファイル(たとえばc:\\test.txt)を展開することって
GASではむりなんかいな?
367デフォルトの名無しさん
2017/01/08(日) 21:45:18.24ID:5b4VWoeT ローカルのものをGoogleDriveにupするAPIはあるよ
368366
2017/01/09(月) 07:41:00.04ID:kW/T2j6A >>367
早速の返信ありがとうございます
いろいろ調べましたが
http://tokidoki-web.com/2013/08/file-api%E3%81%A7%E3%83%AD%E3%83%BC%E3%82%AB%E3%83%AB%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E6%83%85%E5%A0%B1%E5%8F%96%E5%BE%97%E3%81%97%E3%81%A6%E3%82%84%E3%82%93%E3%82%88/
にあるとおり
>セキュリティの問題上でパスを「C:\file.txt」や「../text/file.txt」の様に指定してファイルを書き直す事はできません。
との状況です
早速の返信ありがとうございます
いろいろ調べましたが
http://tokidoki-web.com/2013/08/file-api%E3%81%A7%E3%83%AD%E3%83%BC%E3%82%AB%E3%83%AB%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E6%83%85%E5%A0%B1%E5%8F%96%E5%BE%97%E3%81%97%E3%81%A6%E3%82%84%E3%82%93%E3%82%88/
にあるとおり
>セキュリティの問題上でパスを「C:\file.txt」や「../text/file.txt」の様に指定してファイルを書き直す事はできません。
との状況です
369デフォルトの名無しさん
2017/01/09(月) 10:02:02.53ID:/7U8UXhW ローカルのものをGoogleDriveにupしたあと
それをGASで開くんだよ
それをGASで開くんだよ
371デフォルトの名無しさん
2017/01/13(金) 00:01:00.63ID:YkcCHApN373デフォルトの名無しさん
2017/02/02(木) 07:52:54.77ID:hDfY8PDB 半年ほど前にお世話になった者です
スプレッドシートでimportdata関数を使っていたんですが
Loading......が頻発するので、やはりGASで対処したいのです
データ取得までは出来てると思うのですが、シートに書き込む段階が全くおかしいようで・・
function fetchData(){
var response = UrlFetchApp.fetch("http://hesonogoma.com/stocks/data/japan-all-stock-prices");
var json = response.getContentText();
var kakaku = JSON.parse(json);
var range = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange(1, 1);
range.offset(0, 0, 6000, 26).clear();
for(var i=0; i<kakaku.length; i++) {
var event = kakaku[i];
range.offset(i+1,0).setValue(event);
}
}
正解か、参考になるサイトをご教授いただきたいのです
色んなサイトのコード切り貼りしすぎて、頭がおかしくなってきたw
スプレッドシートでimportdata関数を使っていたんですが
Loading......が頻発するので、やはりGASで対処したいのです
データ取得までは出来てると思うのですが、シートに書き込む段階が全くおかしいようで・・
function fetchData(){
var response = UrlFetchApp.fetch("http://hesonogoma.com/stocks/data/japan-all-stock-prices");
var json = response.getContentText();
var kakaku = JSON.parse(json);
var range = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange(1, 1);
range.offset(0, 0, 6000, 26).clear();
for(var i=0; i<kakaku.length; i++) {
var event = kakaku[i];
range.offset(i+1,0).setValue(event);
}
}
正解か、参考になるサイトをご教授いただきたいのです
色んなサイトのコード切り貼りしすぎて、頭がおかしくなってきたw
374デフォルトの名無しさん
2017/02/02(木) 12:56:10.24ID:Y5kXFMjA アクセス権は?
375373
2017/02/03(金) 06:23:34.32ID:HRggU1Ve >>374
仕組みがよくわからないんですが、
ログにはデータ表示されるのでアクセスは出来ているはず・・・
・・もしかしてアクセス権というのは違法性の問題とかですか!?
すみません、だったら質問とりやめますが
仕組みがよくわからないんですが、
ログにはデータ表示されるのでアクセスは出来ているはず・・・
・・もしかしてアクセス権というのは違法性の問題とかですか!?
すみません、だったら質問とりやめますが
376デフォルトの名無しさん
2017/02/03(金) 08:05:00.39ID:HRggU1Ve 色々やってみたら一応なんとかなりました
1年ちょいのモヤモヤが一気に解消して、いま涙目になってますウォォ
ありがとうございました!
1年ちょいのモヤモヤが一気に解消して、いま涙目になってますウォォ
ありがとうございました!
377デフォルトの名無しさん
2017/02/03(金) 16:11:50.71ID:Jl+ODihZ 役に立たんちんぽだな
378デフォルトの名無しさん
2017/02/15(水) 00:43:00.46ID:8OzNcjl5 エラーのメールいっぱいくるからトリガー止めようと思っても保存押したらサーバーエラーになっちゃう
379デフォルトの名無しさん
2017/02/15(水) 13:37:01.14ID:8OzNcjl5 "サービスで1日に使用しているコンピュータ時間が長すぎます”っていうエラー出るだけど
どういうエラーか分かりますか?
なにもいじってないのに昨晩から急に出るようになった
どういうエラーか分かりますか?
なにもいじってないのに昨晩から急に出るようになった
380デフォルトの名無しさん
2017/02/15(水) 13:39:42.93ID:0zPxl8zN 無限ループ
381デフォルトの名無しさん
2017/02/15(水) 13:40:56.40ID:8OzNcjl5 なるほど
なんで急になったんだろう
なんで急になったんだろう
382デフォルトの名無しさん
2017/02/18(土) 13:34:37.67ID:sYCIN7Mu 1日のMAXが累計1時間だっけか
処理回数が多いか、実行時間が長いんだろうな
処理回数が多いか、実行時間が長いんだろうな
383379
2017/02/19(日) 12:34:42.66ID:I5IVz31O 1日止めて何も変えずトリガー元に戻しましたが、今のところ問題無し
数は減らしましたがペースは変えず
数は減らしましたがペースは変えず
384デフォルトの名無しさん
2017/02/27(月) 17:20:09.61ID:D6mIqUvN Spreadsheetで行の非表示/表示はsheet.hideRow(rowIndex)/sheet.unhideRow(rowIndex)ですが、
ある行が非表示であるかどうかはどのように確認できますか?
ある行が非表示であるかどうかはどのように確認できますか?
385デフォルトの名無しさん
2017/03/02(木) 18:37:21.00ID:ZV5SMkF2 visible
386デフォルトの名無しさん
2017/03/09(木) 00:32:07.05ID:JhFIW3VD387デフォルトの名無しさん
2017/03/09(木) 00:45:24.51ID:9+K5Dr1K Visible
388デフォルトの名無しさん
2017/03/10(金) 02:53:31.23ID:+YP/FacC https://code.google.com/p/google-apps-script-issues/issues/detail?id=195
これがOpen issueってことはサポートされてないんでは?
これがOpen issueってことはサポートされてないんでは?
389デフォルトの名無しさん
2017/03/11(土) 14:16:44.62ID:QRqRtZxP >>388
ありがとうございます。確かにそのページによるとサポートされてなさそうですね。
stackoverflowでいくつかの同様な質問を見つけましたが、できない的なことが書かれてました。
visibleの件ももう少し調べてみて、できそうになかったら諦めます。
ありがとうございます。確かにそのページによるとサポートされてなさそうですね。
stackoverflowでいくつかの同様な質問を見つけましたが、できない的なことが書かれてました。
visibleの件ももう少し調べてみて、できそうになかったら諦めます。
390デフォルトの名無しさん
2017/03/26(日) 23:38:49.69ID:bKMbQXbX var triggerUniqueId = ScriptApp.newTrigger("doPost2")
.timeBased()
.after(100)
.create()
.getUniqueId();
これを実行すると以下の3パターンの動作になるのだがなんとかならないかな?
・すぐにdoPost2に飛んでくる
・数秒〜数十秒後にdoPost2に飛んでくる
・どんだけ待とうがdoPost2に飛んでこない(何分か待ってれば飛んでくるのか?)
ちなみに飛んでこなかった場合は全てのトリガを削除してからやり直してる。
.timeBased()
.after(100)
.create()
.getUniqueId();
これを実行すると以下の3パターンの動作になるのだがなんとかならないかな?
・すぐにdoPost2に飛んでくる
・数秒〜数十秒後にdoPost2に飛んでくる
・どんだけ待とうがdoPost2に飛んでこない(何分か待ってれば飛んでくるのか?)
ちなみに飛んでこなかった場合は全てのトリガを削除してからやり直してる。
391390
2017/03/27(月) 00:25:00.99ID:0WjH3gBI 微妙に勘違いされそうな書き方だったので追記
doPost2に飛んできたときはその中でトリガを削除しているので
「飛んでこなかった場合は全てのトリガを削除してからやり直してる。」ということです。
doPost2に飛んできたときはその中でトリガを削除しているので
「飛んでこなかった場合は全てのトリガを削除してからやり直してる。」ということです。
392デフォルトの名無しさん
2017/03/27(月) 01:50:47.06ID:R2ENwT8H 100ms後にdoPost2に飛ばしたいってこと?
最終的になにがしたいかわからん
そのidでなにすんの?
最終的になにがしたいかわからん
そのidでなにすんの?
393デフォルトの名無しさん
2017/03/27(月) 07:58:56.68ID:7fg5PAil PayPal IPNの処理が目的です。
394デフォルトの名無しさん
2017/03/27(月) 08:47:26.49ID:VebtMPKj 目先の目的は「指定した時間後にdoPost2を実行したい」です。
100msが1秒になるにはまだ許容範囲ですが、
さすがに数十秒後やかなり待っても飛んでこないのはなにか設定がおかしいのかなと。
100msが1秒になるにはまだ許容範囲ですが、
さすがに数十秒後やかなり待っても飛んでこないのはなにか設定がおかしいのかなと。
395デフォルトの名無しさん
2017/03/27(月) 20:46:24.21ID:2rEhsR/n トリガーをつくるのではなく、Utilities.sleepじゃダメ?
396デフォルトの名無しさん
2017/03/27(月) 23:05:58.94ID:8SS48vh4 大雑把に以下のような流れになるのでsleepでは無理っす。
1, PayPalからPOSTがくる
2, PayPalにHTTP 200を返す
3, PayPalにPOSTを投げる
https://developer.paypal.com/docs/classic/ipn/integration-guide/IPNIntro/
function doPost(e) {
トリガ仕掛ける
HTTP 200を返す
}
function doPost2() {
POSTを投げる
}
いろいろ試したけど60秒とか大きな値ならそれっぽいタイミングでトリガがかかるみたい。
短すぎる設定時間はダメなのかなぁ。
1, PayPalからPOSTがくる
2, PayPalにHTTP 200を返す
3, PayPalにPOSTを投げる
https://developer.paypal.com/docs/classic/ipn/integration-guide/IPNIntro/
function doPost(e) {
トリガ仕掛ける
HTTP 200を返す
}
function doPost2() {
POSTを投げる
}
いろいろ試したけど60秒とか大きな値ならそれっぽいタイミングでトリガがかかるみたい。
短すぎる設定時間はダメなのかなぁ。
397デフォルトの名無しさん
2017/03/28(火) 08:44:43.71ID:o5IlqyIy トリガの指定って分単位だった気がする
内部的にcronだから
○時ちょうどにトリガー仕掛けたくて試したけど無理で、59分にしかけて00秒まで待つって実装にしたことがある
非同期処理ができないから難しいかも
秒数は一定じゃないから、1分後にトリガー設定しても最大1分59秒後になることもある
にしても面倒な仕様だなPaypal
内部的にcronだから
○時ちょうどにトリガー仕掛けたくて試したけど無理で、59分にしかけて00秒まで待つって実装にしたことがある
非同期処理ができないから難しいかも
秒数は一定じゃないから、1分後にトリガー設定しても最大1分59秒後になることもある
にしても面倒な仕様だなPaypal
398デフォルトの名無しさん
2017/05/05(金) 06:31:43.18ID:SiZHVQw5 VBAのCall ステートメントは、Google Apps Scriptの場合どう記述すればいいですか?
399デフォルトの名無しさん
2017/05/05(金) 07:47:20.79ID:SiZHVQw5 自己解決しました。(・ω<) テヘペロ
400デフォルトの名無しさん
2017/05/14(日) 12:32:35.84ID:jKxGUXHj アクティブシートのカーソルがあるセル(アクティブセル)の行番号を、別のシート(setei)のB1へコピーしたいのですが、
うまく行きません。
5行目のvar copyValue〜の値をmsgBoxで出力すると、希望通りの値が出ているので、そこまでは合っていると思うのでが、
6行目で取得した行番号を、別のシートのB1に入れる所で躓いています。解決方法を教えて頂けないでしょうか?
function myFunction() {
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet_copyFrom = sheet.getActiveSheet();
var sheet_copyTo = sheet.getSheetByName('setei');
var copyValue = sheet_copyFrom.getActiveCell().getRow();
sheet_copyTo.getRange('B1').setValues(copyValue);
}
うまく行きません。
5行目のvar copyValue〜の値をmsgBoxで出力すると、希望通りの値が出ているので、そこまでは合っていると思うのでが、
6行目で取得した行番号を、別のシートのB1に入れる所で躓いています。解決方法を教えて頂けないでしょうか?
function myFunction() {
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet_copyFrom = sheet.getActiveSheet();
var sheet_copyTo = sheet.getSheetByName('setei');
var copyValue = sheet_copyFrom.getActiveCell().getRow();
sheet_copyTo.getRange('B1').setValues(copyValue);
}
401デフォルトの名無しさん
2017/05/14(日) 13:22:55.89ID:v32VfkzT 行番号をコピーするの?アクティブセルの値じゃなくて?
402デフォルトの名無しさん
2017/05/14(日) 13:30:26.13ID:v32VfkzT sheet_copyTo.getRange('B1').setValue(copyValue);
403デフォルトの名無しさん
2017/05/14(日) 15:17:11.71ID:jKxGUXHj404デフォルトの名無しさん
2017/05/21(日) 21:07:56.13ID:UO8/oZl+ 質問です。
スプレッドシートのシートを並び替えることはできますか?
セル範囲のデータならSORTでできることは知っているのですが、シートには使えませんよね。
日付がシート名になってて、それを昇順に並び替えしたいのです。
よろしくお願いします。
スプレッドシートのシートを並び替えることはできますか?
セル範囲のデータならSORTでできることは知っているのですが、シートには使えませんよね。
日付がシート名になってて、それを昇順に並び替えしたいのです。
よろしくお願いします。
405デフォルトの名無しさん
2017/05/22(月) 08:08:37.50ID:Bx+b+qt8 出来ないことはなだろうが面倒くさいし、丸投げならお断り。
406デフォルトの名無しさん
2017/05/22(月) 16:43:39.47ID:j0GB+9U0 IDかわりましたけど404です。
>>405
めんどくさい方法ですけど、一応自分で作ってはみました。
これよりいい方法があるのか、改めてお知恵をお貸しください。
var ss = SpreadsheetApp.openById(file.getId());
var sheets = ss.getSheets();
// シート名(yyyyMMdd形式)で昇順ソート
sheets.sort(function(a, b){
var aa = Number(a.getSheetName()) || a.getSheetName();
var bb = Number(b.getSheetName()) || b.getSheetName();
if (aa < bb) return -1;
if (aa > bb) return 1;
return 0;
});
// 別スプレッドシートにコピー
for (var n in sheets)
{
var sheet = sheets[n];
var sheetName = sheet.getSheetName();
sheet.copyTo(sortedSs).setName(sheetName);
}
同じスプレッドシートでの並べ替えを諦めて、別スプレッドシートにソート済みをコピーしたってだけのものです。
>>405
めんどくさい方法ですけど、一応自分で作ってはみました。
これよりいい方法があるのか、改めてお知恵をお貸しください。
var ss = SpreadsheetApp.openById(file.getId());
var sheets = ss.getSheets();
// シート名(yyyyMMdd形式)で昇順ソート
sheets.sort(function(a, b){
var aa = Number(a.getSheetName()) || a.getSheetName();
var bb = Number(b.getSheetName()) || b.getSheetName();
if (aa < bb) return -1;
if (aa > bb) return 1;
return 0;
});
// 別スプレッドシートにコピー
for (var n in sheets)
{
var sheet = sheets[n];
var sheetName = sheet.getSheetName();
sheet.copyTo(sortedSs).setName(sheetName);
}
同じスプレッドシートでの並べ替えを諦めて、別スプレッドシートにソート済みをコピーしたってだけのものです。
407デフォルトの名無しさん
2017/05/22(月) 22:49:33.07ID:Bx+b+qt8 1.シート数を取得
2.全シート名を配列へ
3.配列をソート array.sort()
4.シートを移動
2.全シート名を配列へ
3.配列をソート array.sort()
4.シートを移動
408デフォルトの名無しさん
2017/05/23(火) 20:48:03.04ID:RApg7j5+ >>407
4. シートを移動
これができなくて悩んでたんですが
SpreadsheetオブジェクトにinsertSheetメソッドやmoveActiveSheetメソッドがありますね。
何とか実装できそうです。
ありがとうございました。
4. シートを移動
これができなくて悩んでたんですが
SpreadsheetオブジェクトにinsertSheetメソッドやmoveActiveSheetメソッドがありますね。
何とか実装できそうです。
ありがとうございました。
409デフォルトの名無しさん
2017/06/23(金) 10:37:10.09ID:0OdP20aK 乙
410デフォルトの名無しさん
2017/06/25(日) 21:20:03.77ID:xjvWfy2S getValuesで取得した二次配列の、あるインデックス番号Ary[n][n]から、セル番号を取得するにはどうすれば良いでしょうか?
又、それはAPIを使わず、javaの配列処理の中で完結できるものなのでしょうか?
又、それはAPIを使わず、javaの配列処理の中で完結できるものなのでしょうか?
411デフォルトの名無しさん
2017/06/26(月) 07:20:27.40ID:POytUkXJ その二次配列はどのセル番号から取得したんだよ。
412デフォルトの名無しさん
2017/06/26(月) 11:16:36.54ID:H+izVTcm modは義務教育で教えるべきだな
413デフォルトの名無しさん
2017/06/26(月) 15:45:17.47ID:Zgx9U3+p gasなのかわからないですが、間違いならすみません。
フォームで@郵便番号を入れたら住所の一部を表記させたいのですが、できるのでしょうか?
A特定の数字をいれたら、外部からその数字に該当するデータを引っ張れるでしょうか?(社員コードいれなら社員名がでるイメージです)
誠にすみませんが、可能ならばご教授
おねがいします。
gasはさわったことないので、できそうならば、やってみたいとおもいます。
フォームで@郵便番号を入れたら住所の一部を表記させたいのですが、できるのでしょうか?
A特定の数字をいれたら、外部からその数字に該当するデータを引っ張れるでしょうか?(社員コードいれなら社員名がでるイメージです)
誠にすみませんが、可能ならばご教授
おねがいします。
gasはさわったことないので、できそうならば、やってみたいとおもいます。
414デフォルトの名無しさん
2017/06/26(月) 20:44:30.70ID:iMKCKa0h415デフォルトの名無しさん
2017/06/26(月) 21:07:30.37ID:YNcumjCY416デフォルトの名無しさん
2017/06/26(月) 22:04:28.18ID:c+BwvDt7 うーん、この、ggrks感
417デフォルトの名無しさん
2017/07/05(水) 17:50:45.17ID:aOT9LPA2 /**
* @return ライブラリ名
*/
とやっているのに返り値のメソッド補完が効きません…
何か間違っているでしょうか…
* @return ライブラリ名
*/
とやっているのに返り値のメソッド補完が効きません…
何か間違っているでしょうか…
418デフォルトの名無しさん
2017/07/05(水) 18:12:42.59ID:lervoDRk それ、ただのコメントでは?
419デフォルトの名無しさん
2017/07/05(水) 19:25:23.18ID:aOT9LPA2 >>418
コメント付けると補完が効くようになると聞きました
コメント付けると補完が効くようになると聞きました
420デフォルトの名無しさん
2017/07/05(水) 19:46:41.16ID:lervoDRk 波括弧で括ってないからかな?
421デフォルトの名無しさん
2017/07/06(木) 14:10:14.25ID:flMfxcNT うちはできてる
422デフォルトの名無しさん
2017/07/12(水) 23:56:43.84ID:zDi+fEh9 外部サイトで申し訳ないのですが、GASについて下記のサイトのチュートリアルを試していたのですが
ttps://tonari-it.com/gas-web-appli-spreadsheet-append/
真似をしてみても、エラー出てしまいます。
getActiveSheet を呼び出す権限がありません(行 2、ファイル「test2」、プロジェクト「HTMLページ表示」)
自分のコードが間違えたのかと、コードをコピペしたり、スクリプト認証を再度許可を出すために
現在とは別にファイルを作り直したりしたのですが、同じエラーが出てしまいます。
このエラーを回避するにはどうすれば良いでしょうか?
ttps://tonari-it.com/gas-web-appli-spreadsheet-append/
真似をしてみても、エラー出てしまいます。
getActiveSheet を呼び出す権限がありません(行 2、ファイル「test2」、プロジェクト「HTMLページ表示」)
自分のコードが間違えたのかと、コードをコピペしたり、スクリプト認証を再度許可を出すために
現在とは別にファイルを作り直したりしたのですが、同じエラーが出てしまいます。
このエラーを回避するにはどうすれば良いでしょうか?
423デフォルトの名無しさん
2017/07/13(木) 13:23:39.30ID:G6DCMcFU よそから持ってきたライブラリを使ってないか
424422
2017/07/13(木) 13:30:04.56ID:7vUNc/rI すみません自己解決しました。
原因はスクリプトにプロジェクトのトリガーを設定していなかったことが原因だった様です。
公開済みのHTMLなのでアクセスすれば良いだけでなのに、なんでや!と思っていたのですが、
googleのwebアプリの場合、公開時にアサインされるHTMLへのリンクは、実はHTMLへのリンクではなく、
リンク > Ajax > .gs > html という流れらしく(たぶん)
3番目の.gsにトリガーが設定されてないとダメという感じの様です。なので.gsのトリガー設定した所動きました。
[設定したトリガー]
実行:doGet
イベント:スプレッドシートから・起動時に設定
このトリガー自体適当に設定したので、spreadsheetに紐付いた(コンテナバウンド)webアプリがこのトリガーで本当に良いのか?
.gsがスタンドアローンだったらどうするのか?などは自分の知識ではまだ不明です。
割と有名(みんなが引っかかる)ワナらしく、「GAS 実行する権限がありません」でググると色々出てきます。
原因はスクリプトにプロジェクトのトリガーを設定していなかったことが原因だった様です。
公開済みのHTMLなのでアクセスすれば良いだけでなのに、なんでや!と思っていたのですが、
googleのwebアプリの場合、公開時にアサインされるHTMLへのリンクは、実はHTMLへのリンクではなく、
リンク > Ajax > .gs > html という流れらしく(たぶん)
3番目の.gsにトリガーが設定されてないとダメという感じの様です。なので.gsのトリガー設定した所動きました。
[設定したトリガー]
実行:doGet
イベント:スプレッドシートから・起動時に設定
このトリガー自体適当に設定したので、spreadsheetに紐付いた(コンテナバウンド)webアプリがこのトリガーで本当に良いのか?
.gsがスタンドアローンだったらどうするのか?などは自分の知識ではまだ不明です。
割と有名(みんなが引っかかる)ワナらしく、「GAS 実行する権限がありません」でググると色々出てきます。
425デフォルトの名無しさん
2017/07/13(木) 14:07:47.08ID:G6DCMcFU そんなことはチュートリアルの一番最初に書いてある
426デフォルトの名無しさん
2017/09/26(火) 05:38:02.61ID:uiCOOs0C ぐぐってきたけど、ここそんなに人気ないの?
427デフォルトの名無しさん
2017/09/26(火) 15:54:12.38ID:dGip1y4C ऄ
428デフォルトの名無しさん
2017/09/26(火) 19:33:58.52ID:vmZLMK5C すみませんが質問させてください。
現在、google appsのみで簡易ウェブアプリの制作を試みています。
構成は
htmlservice+gas+spredseet(DB)
です。
各種申請をweb化するのですが、アクセスしたユーザーのgmailアドレスもDBに格納します。
session.getactiveuser().getemailを利用するため、スクリプトの実行者は「アプリケーションアクセスしているユーザー」にしています。
そうすると、spreadsheetも全員に公開する必要がありますが、spreadsheetの中身は個人情報を少し含むため見られたくありません。
なにかいい方法はありますでしょうか、、、fusiontablesなどであればできるのでしょうか?
現在、google appsのみで簡易ウェブアプリの制作を試みています。
構成は
htmlservice+gas+spredseet(DB)
です。
各種申請をweb化するのですが、アクセスしたユーザーのgmailアドレスもDBに格納します。
session.getactiveuser().getemailを利用するため、スクリプトの実行者は「アプリケーションアクセスしているユーザー」にしています。
そうすると、spreadsheetも全員に公開する必要がありますが、spreadsheetの中身は個人情報を少し含むため見られたくありません。
なにかいい方法はありますでしょうか、、、fusiontablesなどであればできるのでしょうか?
429デフォルトの名無しさん
2017/09/26(火) 19:49:32.88ID:pQJJ1OIB ユーザーごとの情報はユーザープロパティに入れるべきでは?
430デフォルトの名無しさん
2017/09/27(水) 13:03:25.12ID:Is6BRq5M >>429
ご助言ありがとうございます。
propaties serviceについて調べた見ましたが、ユーザープロパティとして保存した場合、他のユーザーからは一切アクセスできないものと思いました。
一部のユーザー(システム管理を行う数名)に対しては、データの参照ができるようにしたいと思ったおります(申請されたデータを承認するようなワークフローアプリを検討しているため。後出して申し訳ありません)
ご助言ありがとうございます。
propaties serviceについて調べた見ましたが、ユーザープロパティとして保存した場合、他のユーザーからは一切アクセスできないものと思いました。
一部のユーザー(システム管理を行う数名)に対しては、データの参照ができるようにしたいと思ったおります(申請されたデータを承認するようなワークフローアプリを検討しているため。後出して申し訳ありません)
431デフォルトの名無しさん
2017/09/27(水) 14:45:10.73ID:/heCrwKp サイズが十分小さければスクリプトプロパティかな。
たしか500KBくらいまで。
あるいは、スプレッドシートにスクリプトを付属させるんじゃなく、
独立プロジェクトにして、openByIdとかopenByUrlとかは?
たしか500KBくらいまで。
あるいは、スプレッドシートにスクリプトを付属させるんじゃなく、
独立プロジェクトにして、openByIdとかopenByUrlとかは?
432デフォルトの名無しさん
2017/09/27(水) 15:36:25.01ID:Is6BRq5M >>431
ご助言ありがとうございます。
プロパティについては、思いの外データの種類が増えそうなため難しそうです。
スクリプトをスタンドアロンにして、openbyidがいいですかね、万一idがバレてしまった時のことが不安ですが、そういったことは起こらないと思っていい感じでしょうか。
ご助言ありがとうございます。
プロパティについては、思いの外データの種類が増えそうなため難しそうです。
スクリプトをスタンドアロンにして、openbyidがいいですかね、万一idがバレてしまった時のことが不安ですが、そういったことは起こらないと思っていい感じでしょうか。
433デフォルトの名無しさん
2017/09/28(木) 10:38:02.39ID:PJxaABWy アプリを分けて階層化しろ
434デフォルトの名無しさん
2017/09/29(金) 01:18:28.86ID:tHWOJPZ9 for (var i = 1; i <= ss.getLastRow() ; i++){
ss.getRange(x,y).setFormula('=IMPORTHTML("https://www.yahoo.co.jp","table"1+i,');
}
for分の中で関数の最後の部分を1ずつ足していきたいのですが、セルに出力された際は「i」の部分は数字としては見てくれません。
1つずつ足していく方法はありますでしょうか。
ss.getRange(x,y).setFormula('=IMPORTHTML("https://www.yahoo.co.jp","table"1+i,');
}
for分の中で関数の最後の部分を1ずつ足していきたいのですが、セルに出力された際は「i」の部分は数字としては見てくれません。
1つずつ足していく方法はありますでしょうか。
435デフォルトの名無しさん
2017/09/29(金) 08:18:30.31ID:qX48jByc >>433
ありがとうございます。
ライブラリ化するということでしょうか。
getEmailする部分を別アプリ(アプリにアクセスしているユーザー実行)にして、spreadsheet操作をするアプリはオーナーとして実行する感じでしょうか。
調べてみます。
ありがとうございます。
ライブラリ化するということでしょうか。
getEmailする部分を別アプリ(アプリにアクセスしているユーザー実行)にして、spreadsheet操作をするアプリはオーナーとして実行する感じでしょうか。
調べてみます。
436デフォルトの名無しさん
2017/09/29(金) 11:06:26.65ID:/1pN5XFr437434
2017/09/29(金) 11:38:46.26ID:tHWOJPZ9 自己解決しました。
ss.getRange(x,y).setFormula('=IMPORTHTML("yahoo.co.jp","table",1+'+i+')');
ss.getRange(x,y).setFormula('=IMPORTHTML("yahoo.co.jp","table",1+'+i+')');
438デフォルトの名無しさん
2017/10/27(金) 20:03:28.12ID:CxLsHkIL googleドライブにアップしたエクセルxlsを自動でspreadsheetに変換するコードはありますか
439デフォルトの名無しさん
2017/10/28(土) 10:08:42.77ID:w8au0uVc すべてのシートで文字の一括置換をしたいのだけど、セル毎に処理するしかないのかな?
440デフォルトの名無しさん
2017/10/28(土) 11:18:38.62ID:YrbVG7kU >>438
pythonでダウソするやつはある
pythonでダウソするやつはある
442デフォルトの名無しさん
2017/11/12(日) 02:54:44.20ID:StX7DGK4 GAS単体でajaxのようなwebページをクローリングすることは可能ですか?
やっぱり外部を通さないと無理でしょうか
やっぱり外部を通さないと無理でしょうか
443デフォルトの名無しさん
2017/11/12(日) 17:25:52.88ID:StX7DGK4 自己解決しました
444デフォルトの名無しさん
2017/11/13(月) 13:04:40.18ID:8/cIJ70S スプレッドシートの制御をAndroidから行う方法をご教示頂けませんでしょうか。
内容としては複数列のソートを行いたいのです。
現状は列指定でソートをかけているのですが、列数が多く余分な時間がかかります。
PCからは実行できているのですが、同様の事がAndroid上から行えたらと思います。
実行用のトリガーがAndroidで使用できずに困っております。
現状トリガーは図形に対してスクリプト実行させていますが、タップしてもAndroidでは削除しか出てきません。
内容としては複数列のソートを行いたいのです。
現状は列指定でソートをかけているのですが、列数が多く余分な時間がかかります。
PCからは実行できているのですが、同様の事がAndroid上から行えたらと思います。
実行用のトリガーがAndroidで使用できずに困っております。
現状トリガーは図形に対してスクリプト実行させていますが、タップしてもAndroidでは削除しか出てきません。
445デフォルトの名無しさん
2017/11/14(火) 18:34:16.47ID:IvDpdEfa function onOpen()とmenuEntries.push使えば?
446デフォルトの名無しさん
2017/12/26(火) 09:12:50.22ID:myEYxvrC https://script.google.com/dashboard/quota
↑にあるトリガーの合計実行時間や、URLFetch の呼び出し、URLFetch のデータの受信が
現在どのくらい使用されている分かるページは無いですか?
https://console.developers.google.com
GoogleドライブAPIなら↑でわかるのにそれ以外載って無くて…
↑にあるトリガーの合計実行時間や、URLFetch の呼び出し、URLFetch のデータの受信が
現在どのくらい使用されている分かるページは無いですか?
https://console.developers.google.com
GoogleドライブAPIなら↑でわかるのにそれ以外載って無くて…
447デフォルトの名無しさん
2018/01/03(水) 23:47:48.36ID:cEXvj/Pp サーバー側でjqueryって使えますか?
WebスクレイピングのHTMLパーサとしてjqueryを使いたいのですが…
WebスクレイピングのHTMLパーサとしてjqueryを使いたいのですが…
448デフォルトの名無しさん
2018/01/04(木) 12:56:13.15ID:o7CttU7P node.jsと思ったがGASか
449デフォルトの名無しさん
2018/01/05(金) 01:26:13.05ID:GBYhvW0R >>447
npmでjQueryをinstall
webpackでbundle
node-google-apps-scriptでアップロード
って感じでいけないかな?
試してないのでできるか分からないけど
npmでjQueryをinstall
webpackでbundle
node-google-apps-scriptでアップロード
って感じでいけないかな?
試してないのでできるか分からないけど
450デフォルトの名無しさん
2018/01/05(金) 10:44:01.68ID:Vef7Ikrv 一部の機能なら普通に使える
451デフォルトの名無しさん
2018/01/06(土) 11:51:13.98ID:HbY4/bGY どっかよそのAPI使うとか
452デフォルトの名無しさん
2018/01/07(日) 11:57:20.99ID:ez3NxZhX Googleドライブにあるスプレッドシートを
JSONファイルを返すウェブアプリケーションとして使ってるんだが
JSONデータがブラウザにキャッシュされなくて困っている
cache-control:no-cache
pragma:no-cache
expires:Mon, 01 Jan 1990 00:00:00 GMT
というhttpヘッダを返してきてキャッシュさせてくれないんだが、
このヘッダを書き換える方法は無いか?
一ヵ月に1度、2度くらいしか更新されないデータだが、毎日頻繁に参照されるもので
データが1.4MBデカい為、変更されたときだけ読み込むようにヘッダを書き換えたい
JSONファイルを返すウェブアプリケーションとして使ってるんだが
JSONデータがブラウザにキャッシュされなくて困っている
cache-control:no-cache
pragma:no-cache
expires:Mon, 01 Jan 1990 00:00:00 GMT
というhttpヘッダを返してきてキャッシュさせてくれないんだが、
このヘッダを書き換える方法は無いか?
一ヵ月に1度、2度くらいしか更新されないデータだが、毎日頻繁に参照されるもので
データが1.4MBデカい為、変更されたときだけ読み込むようにヘッダを書き換えたい
453デフォルトの名無しさん
2018/01/07(日) 12:29:16.75ID:S38kpWyE キャッシュされたら困るからなー
454デフォルトの名無しさん
2018/01/13(土) 02:09:46.21ID:Tg/TmElT >>447
こないだ同じような用途でjsdomとjquery使ったわ。
たしかこんなかんじ
var JSDOM = require('jsdom').JSDOM;
JSDOM.fromUrl('https://example.com/').then(function(dom) {
var window = dom.window;
var jQuery = $ = require('jquery')(window);
// ここから$('ul#hoge > li.huga')とか普通に使えるはず
});
こないだ同じような用途でjsdomとjquery使ったわ。
たしかこんなかんじ
var JSDOM = require('jsdom').JSDOM;
JSDOM.fromUrl('https://example.com/').then(function(dom) {
var window = dom.window;
var jQuery = $ = require('jquery')(window);
// ここから$('ul#hoge > li.huga')とか普通に使えるはず
});
455デフォルトの名無しさん
2018/01/27(土) 11:48:39.68ID:j3glEAxX456デフォルトの名無しさん
2018/01/28(日) 03:46:39.25ID:xa+QRUJO GASって「const 定数名 = 1;」 みたいな記述できない?
varしか無理?
varしか無理?
457デフォルトの名無しさん
2018/01/29(月) 23:20:08.61ID:5eR4vC6L constはランタイムエラー
letは通る
だったような記憶
letは通る
だったような記憶
458デフォルトの名無しさん
2018/02/06(火) 22:16:05.06ID:/gHduiD+ addMenuでスプレッドシートに追加する独自メニューを条件によって選択不可にすることはできますか?
通常のメニューと同じようにグレーアウトして選択できないようにしたいです。
通常のメニューと同じようにグレーアウトして選択できないようにしたいです。
459デフォルトの名無しさん
2018/02/10(土) 06:53:00.00ID:C1kfYYFU 1日1回、UrlFetchでページネイションされた数十ページを取得したいのですが
負荷軽減のため数秒は間隔を明けて取得したいです
settimeoutでエラーがでるのは、GASでは使えないということなのでしょうか?
出来ないとしたら代替方法の検索のヒントなどを教えていただきたいです
負荷軽減のため数秒は間隔を明けて取得したいです
settimeoutでエラーがでるのは、GASでは使えないということなのでしょうか?
出来ないとしたら代替方法の検索のヒントなどを教えていただきたいです
460デフォルトの名無しさん
2018/02/11(日) 06:27:45.78ID:E5AjV+At GASってひょっとしてfor(let data of datas)みたいな構文は通らないのか?
461デフォルトの名無しさん
2018/02/11(日) 06:46:30.86ID:E5AjV+At for each(let data in datas)は通った
GASまじか・・・
GASまじか・・・
462デフォルトの名無しさん
2018/02/13(火) 22:38:42.10ID:wCW429If463デフォルトの名無しさん
2018/02/13(火) 22:39:52.24ID:wCW429If >>458
非表示じゃダメなの?
非表示じゃダメなの?
464デフォルトの名無しさん
2018/02/14(水) 06:29:23.38ID:hdXXEhGY >>462
ありがとうございます
ありがとうございます
465デフォルトの名無しさん
2018/02/14(水) 12:43:37.10ID:qm6gWFGH466デフォルトの名無しさん
2018/02/14(水) 16:40:58.15ID:rMSOrK/H datum
467デフォルトの名無しさん
2018/02/16(金) 06:23:37.77ID:W1XJdyx1 ☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
468デフォルトの名無しさん
2018/04/06(金) 09:46:20.39ID:OGpTmhME すみません、ちょっとお門違いなんですが、
Microsoft系でGoogle Apps Scriptに相当するようなサービスって何でしょうか?
Microsoft系でGoogle Apps Scriptに相当するようなサービスって何でしょうか?
469デフォルトの名無しさん
2018/04/06(金) 12:08:48.32ID:sTfZcU1Y OneDrive
470デフォルトの名無しさん
2018/04/08(日) 08:48:02.53ID:ExM2Rgcj officeアドイン(javascript api)
471デフォルトの名無しさん
2018/04/08(日) 09:35:01.80ID:iYd8ya2H vba
excelだけじゃなく、officeは全部使える
excelだけじゃなく、officeは全部使える
472デフォルトの名無しさん
2018/04/08(日) 11:45:51.95ID:YK+KPtHu Python for Excel
473デフォルトの名無しさん
2018/04/08(日) 12:44:04.55ID:x+tHn1VY Google Spreasheetみたいにクラウドに置いたときに、
定期的に動かしたり、Webアプリとして呼び出せたりするんでしょうか?
定期的に動かしたり、Webアプリとして呼び出せたりするんでしょうか?
474デフォルトの名無しさん
2018/04/27(金) 08:48:50.80ID:azia2EcY 共有スプレッドシートで自分だけのスクリプトを動かすことができますか?
475デフォルトの名無しさん
2018/04/27(金) 12:00:12.58ID:DjfFcydV できる
476デフォルトの名無しさん
2018/04/27(金) 12:30:17.67ID:309OLMv4 >>475
どうやればできますか?
どうやればできますか?
477デフォルトの名無しさん
2018/04/27(金) 14:10:43.72ID:ouRrzssA 【マイトLーヤとPS4】 FFとDQの最新作、VR開発は危険、プレーヤーの日常感覚を損なうおそれ
http://rosie.5ch.net/test/read.cgi/liveplus/1524621704/l50
http://rosie.5ch.net/test/read.cgi/liveplus/1524621704/l50
478デフォルトの名無しさん
2018/04/27(金) 17:49:08.26ID:ash3pEtl >>476
多分このスレの上の方に書いてある
多分このスレの上の方に書いてある
479デフォルトの名無しさん
2018/04/30(月) 09:57:45.45ID:OTdR2Ule スプレッドシートでハイパーリンクになっていないセルの、テキストとURL取得するには、どうすれば良いですか?
480デフォルトの名無しさん
2018/04/30(月) 21:10:05.12ID:k1zO9vV2481デフォルトの名無しさん
2018/05/13(日) 17:28:07.61ID:T6Bs0Y7u しょうもない質問ですが職場などで何て呼んでるでしょうか
ジーエーエス?
グーグルアップス?
こないだガスって言ってる人がいて自分の職場では全く統一されていないです
ジーエーエス?
グーグルアップス?
こないだガスって言ってる人がいて自分の職場では全く統一されていないです
482デフォルトの名無しさん
2018/05/13(日) 20:20:04.93ID:j+nJMGjP483デフォルトの名無しさん
2018/05/14(月) 12:07:03.70ID:2SPouDsA484デフォルトの名無しさん
2018/05/14(月) 13:31:22.77ID:dnGRWxRE >>481
ぎゃす
ぎゃす
485デフォルトの名無しさん
2018/05/23(水) 19:22:31.65ID:Au5e7VGg 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
WX5I9
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
WX5I9
486デフォルトの名無しさん
2018/05/24(木) 10:41:34.45ID:cPlRxlDn WX5I9
487デフォルトの名無しさん
2018/05/25(金) 01:08:25.88ID:9upiSQGW <HEAD>タグの中に文字コードの設定<meta charset= がある場合は、文字コードを抜き出すプログラムを組んでいます。(下記の関数)
function getEntag(response){
var myRegexp = /<HEAD>([\s\S]*)<\/HEAD>/gi;
var elems = response.getContentText().match(myRegexp);
var myEncode = /<meta charset="(.+?)">/gi;
var myEncodeR = elems.getContentText().match(myEncode); // ←この行でエラーが出る
return myEncodeR;
}
エラーの内容
TypeError: オブジェクト「文字列文字列文字列文字列文字列」で関数 getContentText が見つかりません。
なぜ
response.getContentText().match(myRegexp);
はうまくいくのに
var myEncodeR = elems.getContentText().match(myEncode);
はうまくいかないのでしょうか?
function getEntag(response){
var myRegexp = /<HEAD>([\s\S]*)<\/HEAD>/gi;
var elems = response.getContentText().match(myRegexp);
var myEncode = /<meta charset="(.+?)">/gi;
var myEncodeR = elems.getContentText().match(myEncode); // ←この行でエラーが出る
return myEncodeR;
}
エラーの内容
TypeError: オブジェクト「文字列文字列文字列文字列文字列」で関数 getContentText が見つかりません。
なぜ
response.getContentText().match(myRegexp);
はうまくいくのに
var myEncodeR = elems.getContentText().match(myEncode);
はうまくいかないのでしょうか?
488デフォルトの名無しさん
2018/05/25(金) 03:33:33.31ID:JRXZZDGl elems[0]
489デフォルトの名無しさん
2018/05/25(金) 08:23:06.06ID:GbGPTGD4 GASでpdfを作成したいと思い
サイトを参考に出せるようになったのですが
余白の設定オプションを教えていただけないでしょうか?
exportFormat: "pdf", // ファイル形式の指定 pdf / csv / xls / xlsx
format: "pdf", // ファイル形式の指定 pdf / csv / xls / xlsx
size: "A4", // 用紙サイズの指定 legal / letter / A4
portrait: "true", // true → 縦向き、false → 横向き
fitw: "true", // 幅を用紙に合わせるか
sheetnames: "false", // シート名をPDF上部に表示するか
printtitle: "false", // スプレッドシート名をPDF上部に表示するか
pagenumbers: "false", // ページ番号の有無
gridlines: "false", // グリッドラインの表示有無
fzr: "false", // 固定行の表示有無
ここら辺のオプションワードをつけてGoogle検索して見たのですが見つからないでいます
よろしくおねがいいたします
サイトを参考に出せるようになったのですが
余白の設定オプションを教えていただけないでしょうか?
exportFormat: "pdf", // ファイル形式の指定 pdf / csv / xls / xlsx
format: "pdf", // ファイル形式の指定 pdf / csv / xls / xlsx
size: "A4", // 用紙サイズの指定 legal / letter / A4
portrait: "true", // true → 縦向き、false → 横向き
fitw: "true", // 幅を用紙に合わせるか
sheetnames: "false", // シート名をPDF上部に表示するか
printtitle: "false", // スプレッドシート名をPDF上部に表示するか
pagenumbers: "false", // ページ番号の有無
gridlines: "false", // グリッドラインの表示有無
fzr: "false", // 固定行の表示有無
ここら辺のオプションワードをつけてGoogle検索して見たのですが見つからないでいます
よろしくおねがいいたします
490デフォルトの名無しさん
2018/05/25(金) 09:48:46.51ID:JEsKWWiQ google apps script pdf margin
でググったらstackoverflowとかヒットするけど見てみた?
俺は見てないけど。
でググったらstackoverflowとかヒットするけど見てみた?
俺は見てないけど。
491デフォルトの名無しさん
2018/05/25(金) 13:10:56.83ID:zfLEVsZm 日々の記録をgoogle apps script で記録してたんだが1ヶ月忙しくて
記録の確認してなかったら先月4月26日以降の記録が取れてなかった
プロジェクトを動かすと「承認が必要です」で前もやったことがあるような
画面がでて一つ一つのプロジェクトを自動実行させるために承認設定をした
100ぐらいプロジェクトがあるんだが一つ一つを手作業で承認させるのが
大変だし前もこんなことをさせられた記憶があるんだが
承認を一回で全てのプロジェクトを設定する方法とかないですかね?
記録の確認してなかったら先月4月26日以降の記録が取れてなかった
プロジェクトを動かすと「承認が必要です」で前もやったことがあるような
画面がでて一つ一つのプロジェクトを自動実行させるために承認設定をした
100ぐらいプロジェクトがあるんだが一つ一つを手作業で承認させるのが
大変だし前もこんなことをさせられた記憶があるんだが
承認を一回で全てのプロジェクトを設定する方法とかないですかね?
492デフォルトの名無しさん
2018/05/25(金) 16:14:05.22ID:XO9fqtgP っていうかしばらくしたらまた承認求められそうでこわいな
493デフォルトの名無しさん
2018/05/26(土) 08:10:21.44ID:hhovu7qg494デフォルトの名無しさん
2018/05/27(日) 18:16:43.31ID:AVKJ/EkR google apps scriptでLZHを解凍したいと思っています。
以下のどちらかのコードはGASでも使用可能でしょうか?
又は、ほかに何か良い方法があるでしょうか?
ttps://github.com/erlandranvinge/lh4.js/tree/master
ttp://formats.kaitai.io/lzh/javascript.html
現在1つのテキストファイルが圧縮されたzipのblobを、
Utilities.unzip
で解凍し、中のテキストファイルを利用しているのですが、
LZHでも同じ事ができるようにしたいと考えています。
上記ページのサンプルは見たのですが、
DOMが全く分からず、javascriptの理解も浅いため、
どう書けばよいのかわかりませんでした。
LZHのblobから解凍されたファイルのblobが得られれば理想的です。
アドバイスお願いしますm(_ _)m
以下のどちらかのコードはGASでも使用可能でしょうか?
又は、ほかに何か良い方法があるでしょうか?
ttps://github.com/erlandranvinge/lh4.js/tree/master
ttp://formats.kaitai.io/lzh/javascript.html
現在1つのテキストファイルが圧縮されたzipのblobを、
Utilities.unzip
で解凍し、中のテキストファイルを利用しているのですが、
LZHでも同じ事ができるようにしたいと考えています。
上記ページのサンプルは見たのですが、
DOMが全く分からず、javascriptの理解も浅いため、
どう書けばよいのかわかりませんでした。
LZHのblobから解凍されたファイルのblobが得られれば理想的です。
アドバイスお願いしますm(_ _)m
495デフォルトの名無しさん
2018/06/01(金) 18:16:54.34ID:zHSboa0n 質問です
色んなサイトを見ながら、Google spread sheetにスクリプトを作成しました
このスクリプトを外部アプリから実行するにはどうすれば良いのでしょうか。
ちなみに外部アプリとはDiscordの事です。
色んなサイトを見ながら、Google spread sheetにスクリプトを作成しました
このスクリプトを外部アプリから実行するにはどうすれば良いのでしょうか。
ちなみに外部アプリとはDiscordの事です。
496デフォルトの名無しさん
2018/06/01(金) 18:21:14.88ID:Wbxpqrec オレオレAPIをくっ付ける
497デフォルトの名無しさん
2018/06/01(金) 19:56:50.22ID:rK/pkJ29 >>496
ありがとうございます。オレオレAPIは聞いた事無いですが調べてみます。
ありがとうございます。オレオレAPIは聞いた事無いですが調べてみます。
498デフォルトの名無しさん
2018/06/01(金) 21:11:40.39ID:xvkHhoxN doGetかdoPost作ってHTTPで呼べばいいじゃない
499デフォルトの名無しさん
2018/06/02(土) 12:34:27.24ID:yUEJ+BJS djangoみたいなdispatcherとかroutingの仕組みないかな
500デフォルトの名無しさん
2018/06/13(水) 21:43:33.53ID:KouNon+v お手軽WebAPI作るときデバッグどうしてる?
デバッグ用URLではHTTPリクエスト受け付けてくれないでしょ?
リリース用URLじゃLogger使えないし
コード変えてバージョン上げずに更新しても変更反映してないから
バージョンだけが無駄に上がってく
いい方法教えてください
デバッグ用URLではHTTPリクエスト受け付けてくれないでしょ?
リリース用URLじゃLogger使えないし
コード変えてバージョン上げずに更新しても変更反映してないから
バージョンだけが無駄に上がってく
いい方法教えてください
501デフォルトの名無しさん
2018/06/14(木) 09:56:45.68ID:b+x6hMO7 デバッグ用のアカウント作って
そっちからアクセスしたらデバッグモードで動くように作る
そっちからアクセスしたらデバッグモードで動くように作る
502デフォルトの名無しさん
2018/06/15(金) 20:11:23.83ID:EMcl4RB2 > そっからアクセスしたら
これは別アカに共有かけてそっちで開発し
リリース段階で本アカで更新ってこと?
これは別アカに共有かけてそっちで開発し
リリース段階で本アカで更新ってこと?
503デフォルトの名無しさん
2018/06/16(土) 06:04:47.49ID:xpvZKcIC へ?
デバッグするときのクライアントのアカウントだよ
デバッグするときのクライアントのアカウントだよ
504デフォルトの名無しさん
2018/07/04(水) 22:17:45.27ID:gFgZc5FG PYT
505デフォルトの名無しさん
2018/07/05(木) 12:09:59.99ID:6iN0hdr0 なんだこいつ
506デフォルトの名無しさん
2018/07/09(月) 17:33:54.99ID:se1rYzUR スプレットシートの中身をWEB経由でJSON形式で出力しているんだが
↓のようにリダイレクトされるんだが、このリダイレクトを抑止する方法ないか?
https://script.google.com/macros/s/〜
↓
https://script.googleusercontent.com/macros/echo?user_content_key=〜
https://script.googleusercontent.com/macros/echo?user_content_key=〜の方に直接飛んでも
何故か、一旦https://script.google.com/macros/s/にリダイレクトされてからまたリダイレクトされるし…
↓のようにリダイレクトされるんだが、このリダイレクトを抑止する方法ないか?
https://script.google.com/macros/s/〜
↓
https://script.googleusercontent.com/macros/echo?user_content_key=〜
https://script.googleusercontent.com/macros/echo?user_content_key=〜の方に直接飛んでも
何故か、一旦https://script.google.com/macros/s/にリダイレクトされてからまたリダイレクトされるし…
507デフォルトの名無しさん
2018/07/09(月) 18:11:50.09ID:1p1eFn95 503
508デフォルトの名無しさん
2018/07/09(月) 18:18:12.92ID:kTTsYOtx 301 or 302
509デフォルトの名無しさん
2018/07/22(日) 00:26:34.52ID:ZpQQ0pAE spreadsheetのgasについて質問です。
getLastColumnの仕様は、値が入ってる最終列を返すのでしょうか?
値が入っていない列を返すときもあって混乱してます。
あと、insertSheetの直後にgetLastColumnを呼び出すと0が返ってくるのですが、このとき、存在する最終列を取得する方法はないでしょうか。
このとき取得したい期待値はZ列の26です。(画面上Z列までセルが有効になっているように見えるため)
これは26って固定値をもつのが気分的にいやっていうワガママです
getLastColumnの仕様は、値が入ってる最終列を返すのでしょうか?
値が入っていない列を返すときもあって混乱してます。
あと、insertSheetの直後にgetLastColumnを呼び出すと0が返ってくるのですが、このとき、存在する最終列を取得する方法はないでしょうか。
このとき取得したい期待値はZ列の26です。(画面上Z列までセルが有効になっているように見えるため)
これは26って固定値をもつのが気分的にいやっていうワガママです
510デフォルトの名無しさん
2018/07/22(日) 00:55:09.31ID:ZpQQ0pAE getMaxColumnsってのがあった(>_<)
511デフォルトの名無しさん
2018/09/29(土) 19:38:05.42ID:LLxAt+HQ GASの勉強は本とサイトどっちがいいですか?
おすすめとかあったら教えて欲しいです
おすすめとかあったら教えて欲しいです
512デフォルトの名無しさん
2018/09/29(土) 20:16:29.09ID:8vdhvdxP 【報道規制の、解禁を】 マ@トレーヤのUFO出現
http://matsuri.5ch.net/test/read.cgi/sky/1537927336/l50
http://matsuri.5ch.net/test/read.cgi/sky/1537927336/l50
513デフォルトの名無しさん
2018/09/30(日) 11:25:49.99ID:ELKSxw7h ここまで読みました
514デフォルトの名無しさん
2018/09/30(日) 13:18:42.33ID:XFe1Q8VS >>511
教えてください
教えてください
515デフォルトの名無しさん
2018/10/01(月) 00:18:27.39ID:IPuEyzUl516デフォルトの名無しさん
2018/10/06(土) 02:08:54.46ID:2uRTZ8KW html
<input type="button" onclick="google.script.run.aa()">
コード.gas
function aa(){
var value = document.getElementById("ta").value;
}
こんな感じでgas側でgetElement使いたいんだけど方法ないかな?
html側に書けばできるけどスクリプトをまとめてgas側に書いてスッキリさせたい
これだとvalueになにも入らないっぽい
ないならあきらめるが
<input type="button" onclick="google.script.run.aa()">
コード.gas
function aa(){
var value = document.getElementById("ta").value;
}
こんな感じでgas側でgetElement使いたいんだけど方法ないかな?
html側に書けばできるけどスクリプトをまとめてgas側に書いてスッキリさせたい
これだとvalueになにも入らないっぽい
ないならあきらめるが
517デフォルトの名無しさん
2018/10/06(土) 10:06:26.13ID:QZvBbzw3 "ta"だけ渡してあとは好きに汁
518デフォルトの名無しさん
2018/10/06(土) 23:57:43.46ID:MQLlRsEJ gas側でDOMは触れないですよ
519デフォルトの名無しさん
2018/10/09(火) 21:03:41.76ID:J1hD0LSr Google apps scriptで図書館のホームページにログインしたいのですが、できません。
どうすればログインできるのでしょうか?
function myFunction() {
var payload = {
"username" : "XXXXXXXXXX",
"j_password" : "XXXXXXX",
}
var options = {
"method" : "POST",
"payload" : payload,
"followRedirects" : false
}
var url = "https://opac.toshokan.city.fukuoka.lg.jp/licsxp-opac/j_security_check?subSystemFlag=0"
var response = UrlFetchApp.fetch(url, options);
var cookies = response.getHeaders()["Set-Cookie"];
var headers = { 'Cookie' : cookies };
options = {
method : "get",
headers : headers,
followRedirects: true,
};
var topUrl = "https://opac.toshokan.city.fukuoka.lg.jp/licsxp-opac/WOpacUsrLendListAction.do"
response = UrlFetchApp.fetch(topUrl, options);
var content = response.getContentText("UTF-8");
Logger.log(content)
}
どうすればログインできるのでしょうか?
function myFunction() {
var payload = {
"username" : "XXXXXXXXXX",
"j_password" : "XXXXXXX",
}
var options = {
"method" : "POST",
"payload" : payload,
"followRedirects" : false
}
var url = "https://opac.toshokan.city.fukuoka.lg.jp/licsxp-opac/j_security_check?subSystemFlag=0"
var response = UrlFetchApp.fetch(url, options);
var cookies = response.getHeaders()["Set-Cookie"];
var headers = { 'Cookie' : cookies };
options = {
method : "get",
headers : headers,
followRedirects: true,
};
var topUrl = "https://opac.toshokan.city.fukuoka.lg.jp/licsxp-opac/WOpacUsrLendListAction.do"
response = UrlFetchApp.fetch(topUrl, options);
var content = response.getContentText("UTF-8");
Logger.log(content)
}
520デフォルトの名無しさん
2018/10/11(木) 19:13:50.65ID:KKlTShrO driveにあるmp3ファイルに画像を貼り付けて、mp4にする。それをフォトに保存するscriptって作れますか?
可能であれば教えて頂けると幸いです。
可能であれば教えて頂けると幸いです。
521デフォルトの名無しさん
2018/10/12(金) 05:14:25.86ID:1iFt3dhJ できますよ
522デフォルトの名無しさん
2018/10/12(金) 07:52:54.61ID:C1pVYns8523522
2018/10/12(金) 09:19:01.30ID:C1pVYns8 >>519
Ruby で、Selenium Webdriver では、
CSS セレクターで、入力欄を指定して、入力する。
入力できたら、ログインボタンを押す
element = driver.find_element(:css, 'input[name="userid"]')
element.clear
element.send_key "xxxxxx"
element = driver.find_element(:css, 'input[name="password"]')
element.clear
element.send_key "yyyyyy"
driver.find_element(:css, 'a.btn').click
Ruby で、Selenium Webdriver では、
CSS セレクターで、入力欄を指定して、入力する。
入力できたら、ログインボタンを押す
element = driver.find_element(:css, 'input[name="userid"]')
element.clear
element.send_key "xxxxxx"
element = driver.find_element(:css, 'input[name="password"]')
element.clear
element.send_key "yyyyyy"
driver.find_element(:css, 'a.btn').click
524デフォルトの名無しさん
2018/10/14(日) 21:11:05.91ID:Qblq+S/g525522
2018/10/14(日) 23:38:23.09ID:hWarSIQ5 >>519
のコードには、以下のように、
CSS セレクターで、入力欄を指定して、入力する部分を表示がないよね
element = driver.find_element(:css, 'input[name="userid"]')
element.clear
element.send_key "xxxxxx"
また、以下のように、
CSS セレクターで、ボタンを指定して、押す部分もないよね
driver.find_element(:css, 'a.btn').click
のコードには、以下のように、
CSS セレクターで、入力欄を指定して、入力する部分を表示がないよね
element = driver.find_element(:css, 'input[name="userid"]')
element.clear
element.send_key "xxxxxx"
また、以下のように、
CSS セレクターで、ボタンを指定して、押す部分もないよね
driver.find_element(:css, 'a.btn').click
526522
2018/10/14(日) 23:40:22.51ID:hWarSIQ5527デフォルトの名無しさん
2018/10/19(金) 01:04:33.18ID:IuczYWmH excelマクロをきっかけにVBA勉強してて結構楽しかったから、GASもやってみようと思う
VBAとGASの習熟の難易度で、どっちが難しいとかある?
スプレッドシートは便利そうで興味あるんだけど、マクロ使えないのが自分の中で枷になっててね
興味沸いてる
VBAとGASの習熟の難易度で、どっちが難しいとかある?
スプレッドシートは便利そうで興味あるんだけど、マクロ使えないのが自分の中で枷になっててね
興味沸いてる
528デフォルトの名無しさん
2018/10/19(金) 03:41:20.06ID:xKxj3Rj7 javascriptなんでやって損はないぞ
529デフォルトの名無しさん
2018/10/19(金) 08:16:54.08ID:GydxY9Hg カレンダーを検索したり編集したりできますか?
530デフォルトの名無しさん
2018/10/19(金) 12:11:04.45ID:jQ8EJjtV gasの方が簡単
pythonからも出来るよ
pythonからも出来るよ
531デフォルトの名無しさん
2018/10/20(土) 01:56:59.75ID:cKgpkxwO スプレッドシートにもマクロ機能ついてた気がする。
532デフォルトの名無しさん
2018/10/23(火) 00:29:05.49ID:JwGBt6eq GASの本スレってここ?
もっと情報交流したいよう(´・ω・`)
もっと情報交流したいよう(´・ω・`)
533デフォルトの名無しさん
2018/10/23(火) 14:24:33.23ID:yFsvvFWj 交換じゃなくて一方通行のスレ
534デフォルトの名無しさん
2018/10/23(火) 16:20:43.87ID:fX6+Gv53 APIは本家でRTFMだしなあ
便利なライブラリとか開発環境とか教えてくれれば交流になるかも
便利なライブラリとか開発環境とか教えてくれれば交流になるかも
535デフォルトの名無しさん
2018/10/23(火) 20:39:33.94ID:mSpmNxQX claspの話でもしようぜ
536デフォルトの名無しさん
2018/10/24(水) 20:01:07.64ID:GW9EQyzD VBAと同じ感覚でGAS勉強して職場で軽く披露してみたけど、思いのほか抵抗感強くて焦った
上司がセキュリティおじさんで困ったちゃん
上司がセキュリティおじさんで困ったちゃん
537デフォルトの名無しさん
2018/10/24(水) 23:39:10.32ID:yiYSryh5 上司が正しい
538デフォルトの名無しさん
2018/10/26(金) 12:21:46.80ID:sU5wuxUl >>536
業種や職種によるが、うちなら完全アウト。
業種や職種によるが、うちなら完全アウト。
539デフォルトの名無しさん
2018/10/26(金) 13:19:49.44ID:xb+RGQ0c 上場会社とかになるとそれくらい情報の取り扱いが厳しくなるのかな
こっちは100人ぽっちの中小だから想像できないわ
こっちは100人ぽっちの中小だから想像できないわ
540デフォルトの名無しさん
2018/10/26(金) 16:46:23.98ID:8hqqerJ0 上場は隔離
541デフォルトの名無しさん
2018/10/26(金) 19:22:56.70ID:ZfJ/Stj8 Googleがお洩らしするからでしょ。
542デフォルトの名無しさん
2018/10/26(金) 22:40:04.49ID:THXYApLL 会社としてgsuite導入してるとこならどんどん使って良い
てかそんな会社があったら自分が入りたい
てかそんな会社があったら自分が入りたい
543デフォルトの名無しさん
2018/10/26(金) 23:57:14.18ID:IDCNATjR544デフォルトの名無しさん
2018/10/27(土) 00:07:34.80ID:B9LZkkMM セキュリティというか保守的な日本企業はクラウドが嫌いって話
545デフォルトの名無しさん
2018/10/27(土) 00:32:34.74ID:QkHwtfgJ googleなんて危険の筆頭だろ
546デフォルトの名無しさん
2018/10/27(土) 00:35:10.36ID:5J0lMEEl547デフォルトの名無しさん
2018/10/27(土) 00:54:46.00ID:QkHwtfgJ 個人的には嫌ってないよ
大事なものは暗号化してからうp汁
大事なものは暗号化してからうp汁
548デフォルトの名無しさん
2018/10/27(土) 02:09:59.56ID:zu36BJom 大事なものを暗号化してメールで送るのはいいけど
そのパスワードを次のメールで送る日本企業
そのパスワードを次のメールで送る日本企業
549デフォルトの名無しさん
2018/10/27(土) 03:00:25.65ID:g1pi9PrZ それを得意げに語る上司もセットで
マジであれはなんなんだ
社会に出て驚いた事ベスト3に入る程の衝撃だったわ
マジであれはなんなんだ
社会に出て驚いた事ベスト3に入る程の衝撃だったわ
550デフォルトの名無しさん
2018/10/27(土) 11:57:29.17ID:R2aCZi1a >>548
別のメールに別けてるだけマシ
別のメールに別けてるだけマシ
551デフォルトの名無しさん
2018/10/27(土) 15:12:14.87ID:v0X4VL4w552デフォルトの名無しさん
2018/10/29(月) 03:15:47.62ID:Oa9CImgn そういう中身の伴わない、見た目を取り繕うだけの作業は今の若者はメチャクチャ嫌う
後輩指導する時に、そんな馬鹿な事はやらなくていいと指示したら、俺が上司に怒られた
じゃあ上司から直接後輩に指導してくださいと言ったら、それはお前の仕事だと逃げる
前の会社の話
後輩指導する時に、そんな馬鹿な事はやらなくていいと指示したら、俺が上司に怒られた
じゃあ上司から直接後輩に指導してくださいと言ったら、それはお前の仕事だと逃げる
前の会社の話
553デフォルトの名無しさん
2018/10/29(月) 11:17:29.02ID:rTl7m6mf >見た目を取り繕うだけの作業
kwsk
kwsk
554デフォルトの名無しさん
2018/10/29(月) 18:29:21.95ID:Oa9CImgn >>553
上で言われてた金庫とその鍵を一緒に送るような行為だよ
あとは、excelが警告を出すって理由でcsvファイルのマクロ加工が許されなかったり、その判断基準が分からなかった
会社は中小零細なんかじゃなくて、従業員数百いる中堅企業だったから、入社してから余計に驚いた
上で言われてた金庫とその鍵を一緒に送るような行為だよ
あとは、excelが警告を出すって理由でcsvファイルのマクロ加工が許されなかったり、その判断基準が分からなかった
会社は中小零細なんかじゃなくて、従業員数百いる中堅企業だったから、入社してから余計に驚いた
555デフォルトの名無しさん
2018/10/30(火) 14:31:07.59ID:p4LrBCE7 社員の偏差値低そう
556デフォルトの名無しさん
2018/10/30(火) 18:21:19.53ID:aexQ9Irm セキュリティの固さと本人の鍵紛失率は比例だから悩ましいのよね
557デフォルトの名無しさん
2018/11/08(木) 12:09:12.86ID:EkjzBgW6 人いないな
558デフォルトの名無しさん
2018/11/15(木) 11:08:41.99ID:PvDTioib 質問いいですか?
559デフォルトの名無しさん
2018/11/15(木) 11:10:59.21ID:1bc0l4Fz たぶん
560デフォルトの名無しさん
2018/11/15(木) 19:19:33.65ID:PvDTioib ちょっと待ってくださいね
561デフォルトの名無しさん
2018/11/16(金) 00:29:03.17ID:r0xHlJjv 次の方どうぞ
562デフォルトの名無しさん
2018/11/16(金) 10:59:11.72ID:9iOixtPe 二島返還と四島返還はどちらが良いですか
563デフォルトの名無しさん
2018/11/16(金) 11:33:55.39ID:13Ic4Jcn564デフォルトの名無しさん
2018/11/16(金) 12:30:48.55ID:24hcK0zy スプレッドシートのセルの条件で書式を変えるやつなんですけど
セルの保護を付けたり解除したりで背景色を変えることってできますか?
セルの保護を付けたり解除したりで背景色を変えることってできますか?
565デフォルトの名無しさん
2018/11/17(土) 01:59:09.69ID:chEbFNdB566デフォルトの名無しさん
2018/11/17(土) 02:52:29.77ID:iwPEBhZD セルの保護ってスクリプトでできたっけ?
調べてもできなかった記憶
調べてもできなかった記憶
567デフォルトの名無しさん
2018/11/17(土) 07:24:14.01ID:7mXoRMgv セルが保護されてるか確認するコマンド?がわからないんです
それのtrueかfalseでなんとかなりそうなんですが
それのtrueかfalseでなんとかなりそうなんですが
568デフォルトの名無しさん
2018/12/02(日) 19:57:23.72ID:rfLR8sju569デフォルトの名無しさん
2018/12/02(日) 20:00:16.84ID:rfLR8sju570デフォルトの名無しさん
2018/12/02(日) 20:10:18.07ID:rfLR8sju571デフォルトの名無しさん
2018/12/02(日) 20:16:19.12ID:rfLR8sju >>506
じゃ、Apps Script APIでも使えばいいじゃん
じゃ、Apps Script APIでも使えばいいじゃん
572デフォルトの名無しさん
2018/12/13(木) 20:08:03.86ID:XOkEi3bk GoでGraphQL(GAE)
https://outcrawl.com/graphql-server-go-google-app-engine
https://qiita.com/trrrrrys/items/44e839134af1a0155be2
https://tech.mercari.com/entry/2018/10/24/111227
https://github.com/99designs/gqlgen
>まず個人的な理由から。 筆者はGoogle App Engine/Standard Environmentの信者であり、
>それ以外のプラットフォームを使う気は今の所ありません。
いま日本企業で一番、エンジニアの採用に力入れまくってる
最先端ベンチャー企業の社員がここまで言い切るってことは
今後はGAE/Go注目かもしれんな
https://outcrawl.com/graphql-server-go-google-app-engine
https://qiita.com/trrrrrys/items/44e839134af1a0155be2
https://tech.mercari.com/entry/2018/10/24/111227
https://github.com/99designs/gqlgen
>まず個人的な理由から。 筆者はGoogle App Engine/Standard Environmentの信者であり、
>それ以外のプラットフォームを使う気は今の所ありません。
いま日本企業で一番、エンジニアの採用に力入れまくってる
最先端ベンチャー企業の社員がここまで言い切るってことは
今後はGAE/Go注目かもしれんな
573デフォルトの名無しさん
2019/01/29(火) 00:33:59.60ID:70mrLSKr HtmlServiceでもalertでもいいのですが、spreadシートを開いている状態で、1時間おきにダイアログを表示させたいのですが時間主導型でトリガーをセットしても、このコンテキストからは呼び出せないとエラーが出ます。
何かいい回避策はないでしょうか?
何かいい回避策はないでしょうか?
574デフォルトの名無しさん
2019/01/29(火) 15:21:21.69ID:13bkThSC URL経由する
575デフォルトの名無しさん
2019/02/11(月) 11:51:49.34ID:4YEc3wKR スプレッドシートでマクロ起動させるために図形描画して
スクリプトを割り当てたらもう図形の編集や図形の削除ってできないんですか?
割り当て後は右上のプルダウンメニューがでてこないんです
スクリプトを割り当てたらもう図形の編集や図形の削除ってできないんですか?
割り当て後は右上のプルダウンメニューがでてこないんです
576デフォルトの名無しさん
2019/02/12(火) 04:27:36.64ID:orsbZOeu 右クリ
577デフォルトの名無しさん
2019/03/06(水) 10:06:07.80ID:4SRpZFCQ グーグルアップスクリプトはプログラミング初心者におすすめできる
578デフォルトの名無しさん
2019/03/17(日) 12:45:23.95ID:OqCo+XAc Googleカレンダーに添付ファイルを追加するコード教えて!
579デフォルトの名無しさん
2019/03/17(日) 12:52:04.24ID:rD0zueCH python用のならあるよ
580デフォルトの名無しさん
2019/03/17(日) 12:56:12.90ID:pH631X63 これとコマンドラインgdriveでいろいろできそう
581デフォルトの名無しさん
2019/03/17(日) 12:59:07.48ID:rD0zueCH ハゲめ
582デフォルトの名無しさん
2019/03/20(水) 11:14:54.71ID:vprotu0m 内定先がGsuiteなんだけどどう勉強したらいいのかな?
583デフォルトの名無しさん
2019/03/22(金) 14:49:10.46ID:f+WIg5g9 こりゃ問題じゃね
【悲報】Googleマップ、ゼンリンとの契約解除で超絶劣化 ゼンリンも株価暴落 何がしたいんだ両社
https://hayabusa9.5ch.net/test/read.cgi/news/1553226352/
【悲報】Googleマップ、ゼンリンとの契約解除で超絶劣化 ゼンリンも株価暴落 何がしたいんだ両社
https://hayabusa9.5ch.net/test/read.cgi/news/1553226352/
584デフォルトの名無しさん
2019/03/29(金) 18:43:30.56ID:hWFg3V8b Googleカレンダーに添付ファイルを追加するのは諦めて、HYPERLINKで解決した。
585デフォルトの名無しさん
2019/03/30(土) 21:57:46.29ID:CwhbRKdW GASではできないんじゃ?
Calendar APIならできるかもよ
調べてないけど
Calendar APIならできるかもよ
調べてないけど
586デフォルトの名無しさん
2019/04/04(木) 23:11:41.43ID:Wk+4k4Yw GASを使ってnow関数の更新をとめる方法ってないでしょうか?
検索してもまったく出てこないんです
検索してもまったく出てこないんです
587デフォルトの名無しさん
2019/04/05(金) 00:03:09.93ID:8TkW46B2 解決しました
588デフォルトの名無しさん
2019/04/08(月) 12:05:47.40ID:/dR5dMe1 API使わなくてもlinkメソッドで出来るけどね。ここは知ったかぶりする回答者しかいなから使えない。
589デフォルトの名無しさん
2019/04/20(土) 14:40:06.41ID:tWWHyzwg 書き方がわからないんですけど、
VBから翻訳する方法ないですか?
VBから翻訳する方法ないですか?
590デフォルトの名無しさん
2019/04/20(土) 14:55:13.33ID:tgvbScEy591デフォルトの名無しさん
2019/04/20(土) 15:32:55.59ID:tWWHyzwg >>590
あのー、方法を知らない人に聞いてないんですけどー。
あのー、方法を知らない人に聞いてないんですけどー。
592デフォルトの名無しさん
2019/04/21(日) 13:32:14.38ID:tITQ2Bq3 >>591
あきらめろ
あきらめろ
593デフォルトの名無しさん
2019/04/21(日) 15:32:49.13ID:4kO5c1T5594デフォルトの名無しさん
2019/05/05(日) 17:57:44.17ID:rLPrkeGk googleフォーム
名前
趣味
好きな理由
趣味
好きな理由
で得たデータ
名前 趣味 好きな理由 趣味 好きな理由
(名前の入力内容) (趣味の入力内容) (好きな理由の入力内容) (趣味の入力内容) (好きな理由の入力内容)
を
(名前の入力内容)
(趣味の入力内容) (好きな理由の入力内容)
(趣味の入力内容) (好きな理由の入力内容)
と並べ替えたいのですが、どのようにすれば可能でしょうか?
ご存知の方ご教示お願い致します
名前
趣味
好きな理由
趣味
好きな理由
で得たデータ
名前 趣味 好きな理由 趣味 好きな理由
(名前の入力内容) (趣味の入力内容) (好きな理由の入力内容) (趣味の入力内容) (好きな理由の入力内容)
を
(名前の入力内容)
(趣味の入力内容) (好きな理由の入力内容)
(趣味の入力内容) (好きな理由の入力内容)
と並べ替えたいのですが、どのようにすれば可能でしょうか?
ご存知の方ご教示お願い致します
595デフォルトの名無しさん
2019/05/05(日) 18:39:32.86ID:ZbhvsmlF 無理じゃね
596デフォルトの名無しさん
2019/05/06(月) 18:42:19.72ID:o0+2Jvom あきらめろ
597デフォルトの名無しさん
2019/05/08(水) 22:37:52.06ID:v2zfKxp6 フォームと連携されたシートをアレコレ弄るのはあんまりオススメしない
別シートにその形になるようにスクリプト組めば?
別シートにその形になるようにスクリプト組めば?
598デフォルトの名無しさん
2019/05/13(月) 00:46:09.37ID:31F8kOtz 前職を退職してしばらく経過している、VBAとPHPしかできないウンコちゃんなんですけど、
これから勉強するならVBAとGASどっちがおすすめですか?
中小企業でのGSuiteの普及具合ってどう?
これから勉強するならVBAとGASどっちがおすすめですか?
中小企業でのGSuiteの普及具合ってどう?
599デフォルトの名無しさん
2019/05/13(月) 07:51:29.08ID:UqvxTptL 知らんがな
まぁjavascriptと同じ感じだからGAS覚えとけば
使う機会あるか知らんが
まぁjavascriptと同じ感じだからGAS覚えとけば
使う機会あるか知らんが
600デフォルトの名無しさん
2019/05/13(月) 08:41:07.41ID:pa8yLa6W 本当にうんこだな
601デフォルトの名無しさん
2019/05/15(水) 20:51:09.77ID:UMUjFXwO もしかして、スプレッドシートって、テキストボックス配置出来ない?
ボタンを押したときに、テキストボックスに入れた値を引数にしてGAS実行とか無理?
ボタンを押したときに、テキストボックスに入れた値を引数にしてGAS実行とか無理?
602デフォルトの名無しさん
2019/05/16(木) 11:37:04.16ID:Ox4fjiQE きみにはむり
603デフォルトの名無しさん
2019/05/16(木) 19:08:38.58ID:mGxnipSl >>601
できるわ!!GASをなめんな
できるわ!!GASをなめんな
604デフォルトの名無しさん
2019/05/16(木) 22:27:53.89ID:aE3zz80C あ、ごめん、Excelレベルのやつ。
下手に触ると、変形したり消えちゃったりする、
図形のじゃなくて。
下手に触ると、変形したり消えちゃったりする、
図形のじゃなくて。
605デフォルトの名無しさん
2019/05/16(木) 22:52:16.37ID:M/iLkUxO セルじゃあかんのか
606デフォルトの名無しさん
2019/05/16(木) 23:54:06.79ID:aE3zz80C セルだと、「ここに値を入れるんだぞ」って感じじゃないので。
なんて言うか、例えば格子状に線が引かれている方眼紙みたいな年賀はがきがあって、
そこに住所とか氏名書いたら、物凄く萎えると思うの。
なんて言うか、例えば格子状に線が引かれている方眼紙みたいな年賀はがきがあって、
そこに住所とか氏名書いたら、物凄く萎えると思うの。
607デフォルトの名無しさん
2019/05/16(木) 23:57:14.94ID:H3GEaKSc 表だからね
608デフォルトの名無しさん
2019/05/17(金) 09:29:57.48ID:Eosg7Npq まずSpreadSheetにその機能があるのか?
テキストボックス付きのExcel表を変換したらどうなる?
テキストボックス付きのExcel表を変換したらどうなる?
609デフォルトの名無しさん
2019/05/17(金) 20:43:55.99ID:S7b1x4Z7 >>608
何か変な画像(?)みたいなのに置き換えられた。
何か変な画像(?)みたいなのに置き換えられた。
610デフォルトの名無しさん
2019/05/18(土) 10:19:31.77ID:wL0pdwUB HTML ServiceとUI使えばダイアログボックスやサイドバーに
htmlを使ってテキストボックスやボタンとか表示させることができるよ
htmlを使ってテキストボックスやボタンとか表示させることができるよ
611デフォルトの名無しさん
2019/05/18(土) 10:45:56.21ID:4RzeW/b4 getidとgeteventbyidって何が違うの?
612デフォルトの名無しさん
2019/05/18(土) 11:59:38.42ID:7IJ3He79 名前が違うじゃんばーか
613デフォルトの名無しさん
2019/05/18(土) 19:20:28.95ID:4RzeW/b4 どんだけ惨めな負け組人生を送ったら、そんなことが書けるんだろう・・。
614デフォルトの名無しさん
2019/05/18(土) 20:31:24.15ID:P5JmHxRD >>613
涙拭けよw
涙拭けよw
615デフォルトの名無しさん
2019/05/19(日) 13:24:59.15ID:j/nghwCk 負け犬だからその違いもわからないっていうw
616デフォルトの名無しさん
2019/05/21(火) 22:07:00.33ID:Jja3BPK6617デフォルトの名無しさん
2019/05/21(火) 22:07:54.48ID:Jja3BPK6618デフォルトの名無しさん
2019/05/22(水) 22:43:46.56ID:bxcYYOqD >>617
カレンダーイベント配列のgetId。
だから、何でカレンダーイベントのIdを取得できるのがもう一つあるのかなと。
しかも取得結果が違うし。
getIdは、長い暗号 + メールアドレスみたいな文字列が返ってくるけど、
getEventByIdは、全然違う文字が返って来たり、空だったりする。
カレンダーイベント配列のgetId。
だから、何でカレンダーイベントのIdを取得できるのがもう一つあるのかなと。
しかも取得結果が違うし。
getIdは、長い暗号 + メールアドレスみたいな文字列が返ってくるけど、
getEventByIdは、全然違う文字が返って来たり、空だったりする。
619デフォルトの名無しさん
2019/05/23(木) 03:29:55.06ID:4J3/T4Xu sheet.getRange().sort(column);
の様な処理で column 列が式の場合、式の文字列でソートされますが
この関数は演算結果に対して行う手法はあるのでしょうか?
無いようなら getDisplayValues で配列に取り込み、
放り込みなおして sort するのが比較的手数が少ない方法ですかね?
の様な処理で column 列が式の場合、式の文字列でソートされますが
この関数は演算結果に対して行う手法はあるのでしょうか?
無いようなら getDisplayValues で配列に取り込み、
放り込みなおして sort するのが比較的手数が少ない方法ですかね?
620デフォルトの名無しさん
2019/05/23(木) 08:12:12.16ID:nodzy/aN 式でソートされないけど
621デフォルトの名無しさん
2019/05/23(木) 14:01:08.81ID:4J3/T4Xu 検証不足で他の要因で一部にソート異常があったので思い込みにはまってました、お恥ずかしい
622デフォルトの名無しさん
2019/06/06(木) 07:53:11.68ID:0GC4e250 スプレッドシートでExcelのマクロみたいなことをしたいのですが
オススメの参考書などありますでしょうか?
オススメの参考書などありますでしょうか?
623デフォルトの名無しさん
2019/06/06(木) 22:33:31.61ID:17p7tBKQ ググって調べるのが一番だと思うけど。
俺も欲しかったので、Amazonで調べたけど、
内容がすぐに陳腐化するらしい。
アップデートが頻繁なのも善し悪しだな。
俺も欲しかったので、Amazonで調べたけど、
内容がすぐに陳腐化するらしい。
アップデートが頻繁なのも善し悪しだな。
624デフォルトの名無しさん
2019/06/08(土) 17:29:30.36ID:h5srjJt3 Javascriptの基礎的な言語知識と
GAS独自のオブジェクト
たとえばスプレッドシートなら
Spreadsheet, sheet, rangeなどが分かればある程度のものは
組めるようになると思う
GAS独自のオブジェクト
たとえばスプレッドシートなら
Spreadsheet, sheet, rangeなどが分かればある程度のものは
組めるようになると思う
625デフォルトの名無しさん
2019/06/16(日) 20:09:51.82ID:ZtozgK8X gmailの着信をトリガーにする方法はありますか?
今は1分間隔でスクリプトを動かしてるんだけど、
たまに経過時間でエラーがでちゃうので、1分間隔は厳しいのかなーとか。
今は1分間隔でスクリプトを動かしてるんだけど、
たまに経過時間でエラーがでちゃうので、1分間隔は厳しいのかなーとか。
626デフォルトの名無しさん
2019/06/17(月) 10:59:46.44ID:lxO8a0KV 定期的に自動で再起動するスクリプトにしろ
627デフォルトの名無しさん
2019/06/19(水) 00:49:14.23ID:HMJH3ram 質問なのですが、
1・スプレッドシートにボタンを作る(挿入→図形描画で作りました)
2・そのボタンにツール→スクリプトエディタで書いた、簡単なgasを紐つける
これでPCのブラウザからはボタンをクリックすると、ちゃんとgasが何の問題もなく正常動作するんですが
スマホのスプレッドシートアプリから同シートを開いてボタンをクリックするとgasが全く動きません
エラーも出ず、ボタンオブジェクトがクリックされた状態(D&Dでオブジェクトを移動できる状態)になるだけです
もしかして、gasはスマホのスプレッドシートアプリからは動作しなかったりしますか?
なお、書いたgasは以下です
function addTuujouKinmu() {
var sheet=SpreadsheetApp.getActiveSheet();
var x=sheet.getRange("D14").getValue(); //現状の通常勤務日数を取得
sheet.getRange("D14").setValue(x+1); //ボタンがクリックされたら勤務日数+1
}
よろしくお願い致します
1・スプレッドシートにボタンを作る(挿入→図形描画で作りました)
2・そのボタンにツール→スクリプトエディタで書いた、簡単なgasを紐つける
これでPCのブラウザからはボタンをクリックすると、ちゃんとgasが何の問題もなく正常動作するんですが
スマホのスプレッドシートアプリから同シートを開いてボタンをクリックするとgasが全く動きません
エラーも出ず、ボタンオブジェクトがクリックされた状態(D&Dでオブジェクトを移動できる状態)になるだけです
もしかして、gasはスマホのスプレッドシートアプリからは動作しなかったりしますか?
なお、書いたgasは以下です
function addTuujouKinmu() {
var sheet=SpreadsheetApp.getActiveSheet();
var x=sheet.getRange("D14").getValue(); //現状の通常勤務日数を取得
sheet.getRange("D14").setValue(x+1); //ボタンがクリックされたら勤務日数+1
}
よろしくお願い致します
628デフォルトの名無しさん
2019/06/19(水) 06:06:39.91ID:/B51KqfV スマホのブラウザからは操作できないもんなの?
629デフォルトの名無しさん
2019/06/19(水) 14:23:03.68ID:HMJH3ram >>628
なぜかスマホのブラウザからでも編集、gasの動作しないです
どうも閲覧専用アカウントのような、閲覧しかできない状態になっているように見えます
ブラウザはios版GoogleChromeで、グーグルアカウントはこのシートとgasを書いたオーナーアカウントでログイン済みです
PCブラウザで同アカウントでログインして、gasの正常動作とシート編集などできる事を確認しているアカウントです
スプレッドシートのgasが、アプリはブラウザでもスプシアプリでも何でもいいので、
スマホで動作している方いらっしゃいませんでしょうか?
なぜかスマホのブラウザからでも編集、gasの動作しないです
どうも閲覧専用アカウントのような、閲覧しかできない状態になっているように見えます
ブラウザはios版GoogleChromeで、グーグルアカウントはこのシートとgasを書いたオーナーアカウントでログイン済みです
PCブラウザで同アカウントでログインして、gasの正常動作とシート編集などできる事を確認しているアカウントです
スプレッドシートのgasが、アプリはブラウザでもスプシアプリでも何でもいいので、
スマホで動作している方いらっしゃいませんでしょうか?
630デフォルトの名無しさん
2019/06/30(日) 09:01:10.73ID:1wPBDcFD >>626
625じゃないんだが、再起動ってどうやってするの
625じゃないんだが、再起動ってどうやってするの
631デフォルトの名無しさん
2019/06/30(日) 12:46:38.69ID:KJzE6gx5632デフォルトの名無しさん
2019/07/25(木) 19:54:13.01ID:zHpGKaXB Gmail時間予約送信のGmailApp実装はまだですか?
633デフォルトの名無しさん
2019/07/26(金) 10:10:58.05ID:ycINWf6e 馬鹿には無理
634デフォルトの名無しさん
2019/07/27(土) 23:05:56.23ID:8PWCZyQY >>632
トリガーあるじゃん
トリガーあるじゃん
635デフォルトの名無しさん
2019/07/29(月) 00:59:59.45ID:Dem7abun トリガーも使ってます、定期送信用に。
ただ、不定期にspreadsheets上で複数宛先に一括送信する場合、毎回宛先も内容も違うので、念のため事前にgmail上でチェックしたいのです。
ただ、不定期にspreadsheets上で複数宛先に一括送信する場合、毎回宛先も内容も違うので、念のため事前にgmail上でチェックしたいのです。
636デフォルトの名無しさん
2019/08/19(月) 10:56:02.24ID:zd9MQlzl google driveやonedrive、amazon s3をFTPで利用できるアプリを開発しました。
よかったら使ってみてください。
webifi
http://www.loxsols.com/pukiwiki/index.php?webifi
よかったら使ってみてください。
webifi
http://www.loxsols.com/pukiwiki/index.php?webifi
637デフォルトの名無しさん
2019/09/12(木) 02:28:38.82ID:9g2OFR39 Java Script知らない場合は先にJava Script勉強したほうがいいですか?
638デフォルトの名無しさん
2019/09/12(木) 20:34:14.26ID:hHaUU8VW そうだね
639デフォルトの名無しさん
2019/09/12(木) 20:36:48.23ID:hHaUU8VW でもES5の仕様がほとんど使えないから
ちょい古めのJavaScriptで書くことになる
ちょい古めのJavaScriptで書くことになる
640デフォルトの名無しさん
2019/10/04(金) 01:45:57.83ID:zbpSxYO6 ドキュメントにあるデータ名・URL・オーナー名・作成日・更新日を一覧化したいんだけど、指定したオーナーのデータのみ吐き出したい。
これってできる?
これってできる?
641デフォルトの名無しさん
2019/10/04(金) 15:10:08.55ID:JXWhYfPM どうして出来ないと思ったの?
642デフォルトの名無しさん
2019/11/01(金) 14:08:33.21ID:NFOS1XEp スプレッドシートのonOpenで自分のホルダー名知りたいのですがdriveappの一部が仕様でエラーになります。何か裏技無いでしょうか?
643デフォルトの名無しさん
2019/11/01(金) 17:12:50.47ID:ep+Mqrpb 自己解決、onOpenじゃなくて現在のプロジェクトのトリガーでスプレッドシートの起動時にvoldの関数を実行すると登録したら動きました。擬似的なフォルダ構造でやれそうです。
644デフォルトの名無しさん
2019/12/22(日) 20:08:35.90ID:euY4U9Rb スプレッドシートの内容をカレンダーに自動追加するスクリプトを素人ながら作りましたが、
いわゆるAPIの呼び出し過多で実行時間が11-14秒かかります。
短縮するにはどのように書き直せばいいかご教示いただけないでしょうか。
function CreateEventfromSheet() {
var sheet, i, event, date, added;
sheet = SpreadsheetApp.getActiveSheet();
for(i = 2; i <= sheet.getLastRow(); i++) {
added = sheet.getRange(i, 16).getValue();
if(added == "") {
event = sheet.getRange(i, 11).getValue();
Logger.log(event)
date = sheet.getRange(i, 12).getValue();
Logger.log(thedate)
thisevent = CalendarApp.getCalendarById("*****")
.createAllDayEvent(
event,
date
);
sheet.getRange(i, 16).setValue("done");
}
}
}
いわゆるAPIの呼び出し過多で実行時間が11-14秒かかります。
短縮するにはどのように書き直せばいいかご教示いただけないでしょうか。
function CreateEventfromSheet() {
var sheet, i, event, date, added;
sheet = SpreadsheetApp.getActiveSheet();
for(i = 2; i <= sheet.getLastRow(); i++) {
added = sheet.getRange(i, 16).getValue();
if(added == "") {
event = sheet.getRange(i, 11).getValue();
Logger.log(event)
date = sheet.getRange(i, 12).getValue();
Logger.log(thedate)
thisevent = CalendarApp.getCalendarById("*****")
.createAllDayEvent(
event,
date
);
sheet.getRange(i, 16).setValue("done");
}
}
}
645デフォルトの名無しさん
2019/12/27(金) 01:23:41.12ID:XkxDMtdZ >>644
for文の前に、まるっとgetValue's' とか?
for文の前に、まるっとgetValue's' とか?
646デフォルトの名無しさん
2019/12/27(金) 01:26:28.31ID:XkxDMtdZ >>645
あと、各行の結果も(二次元)配列に入れておいて最後に setValue's' かな
あと、各行の結果も(二次元)配列に入れておいて最後に setValue's' かな
647デフォルトの名無しさん
2019/12/31(火) 15:27:19.03ID:ZLSJA6hu インストール不要だからVBAより便利そうですね。
最近勉強を始めました。
最近勉強を始めました。
648デフォルトの名無しさん
2020/01/01(水) 00:53:00.78ID:DBz6lwN3 >>644
結果を入力するとことか無駄あるけど、こんな感じかな
ポイントはシートにセットする値は二次元配列にしないとだから、resultにpushするときに配列として渡してあげるとこ
ただカレンダーの予定を入力するのは結局一つずつだから、大量に入れると遅くなるのは仕方ないかも
A列 タイトル
B列 日付
C列 イベント作成したかどうか
function sample() {
var sheet = SpreadsheetApp.getActiveSheet();
var calender = CalendarApp.getCalendarById('####');
var data = sheet.getDataRange().getValues();
// カレンダーへのセットの結果を格納する配列
var result = [];
data.forEach(function(value){
if(value[2] === ''){
var title = value[0];
var date = new Date(value[1]);
calender.createAllDayEvent(title, date);
result.push(['done']);
}else{
// すでにセットされている予定は更新しない
result.push([value[2]]);
};
});
sheet.getRange(1, 3, result.length, 1).setValues(result);
}
結果を入力するとことか無駄あるけど、こんな感じかな
ポイントはシートにセットする値は二次元配列にしないとだから、resultにpushするときに配列として渡してあげるとこ
ただカレンダーの予定を入力するのは結局一つずつだから、大量に入れると遅くなるのは仕方ないかも
A列 タイトル
B列 日付
C列 イベント作成したかどうか
function sample() {
var sheet = SpreadsheetApp.getActiveSheet();
var calender = CalendarApp.getCalendarById('####');
var data = sheet.getDataRange().getValues();
// カレンダーへのセットの結果を格納する配列
var result = [];
data.forEach(function(value){
if(value[2] === ''){
var title = value[0];
var date = new Date(value[1]);
calender.createAllDayEvent(title, date);
result.push(['done']);
}else{
// すでにセットされている予定は更新しない
result.push([value[2]]);
};
});
sheet.getRange(1, 3, result.length, 1).setValues(result);
}
649デフォルトの名無しさん
2020/01/01(水) 10:23:10.87ID:so4DvMIc 今後は、VBAからGASに置き換わる感じかな?
650644
2020/01/01(水) 16:06:51.26ID:Xdbev+rH651644
2020/01/01(水) 16:07:06.72ID:Xdbev+rH function CreateEventfromSheet2() {
var sheet = SpreadsheetApp.getActiveSheet();
var lastRow = sheet.getLastRow()
var columnC = sheet.getRange('C:C').getValues();
var lastRowC = columnC.filter(String).length;//案件番号の最終行
Logger.log(lastRowC)
for(var i = 2; i <= lastRowC; i++) {
var added = sheet.getRange(i, 15, lastRowC, 1).getValue();//カレンダー追加済か
var thedate = sheet.getRange(i, 11, lastRowC, 1).getValue();//予定日が入力されているか
if(added == "") {
if(thedate !==""){
var event = sheet.getRange(i, 10).getValue();
Logger.log(event)
thisevent = CalendarApp.getCalendarById("****")
.createAllDayEvent(
event,
thedate
);
sheet.getRange(i, 15).setValue("done");//追加済とする
}
}
}
}
var sheet = SpreadsheetApp.getActiveSheet();
var lastRow = sheet.getLastRow()
var columnC = sheet.getRange('C:C').getValues();
var lastRowC = columnC.filter(String).length;//案件番号の最終行
Logger.log(lastRowC)
for(var i = 2; i <= lastRowC; i++) {
var added = sheet.getRange(i, 15, lastRowC, 1).getValue();//カレンダー追加済か
var thedate = sheet.getRange(i, 11, lastRowC, 1).getValue();//予定日が入力されているか
if(added == "") {
if(thedate !==""){
var event = sheet.getRange(i, 10).getValue();
Logger.log(event)
thisevent = CalendarApp.getCalendarById("****")
.createAllDayEvent(
event,
thedate
);
sheet.getRange(i, 15).setValue("done");//追加済とする
}
}
}
}
652デフォルトの名無しさん
2020/01/15(水) 22:19:02.47ID:22NAEhTT GASに、VBAのAdvancedFilter相当の機能はありますか?
ORとANDの組み合わせが自由自在のやつ。
ORとANDの組み合わせが自由自在のやつ。
653デフォルトの名無しさん
2020/01/15(水) 22:25:11.24ID:22NAEhTT ↑出来れば、他の閲覧者の画面に影響しないタイプのフィルタで。
654デフォルトの名無しさん
2020/01/16(木) 22:23:48.57ID:kEtPLYqM >>652
Query とか?
Query とか?
655デフォルトの名無しさん
2020/01/16(木) 23:53:39.30ID:zIX3nnAn クエリ?
自シート内でフィルタではなく、他シート(または別範囲)に書き出す感じですか。
自シート内でフィルタではなく、他シート(または別範囲)に書き出す感じですか。
656デフォルトの名無しさん
2020/02/25(火) 14:03:43.81ID:eF9AatYa apps scriptでCSV読み込んでそれをgoogleドキュメントに差し込みしてそのあと印刷したいってできる?
657デフォルトの名無しさん
2020/02/25(火) 15:37:53.26ID:FzVRg2bh ok
658デフォルトの名無しさん
2020/02/26(水) 14:11:00.74ID:OdP3ovVD app script初回に他のアクセスするファイルの許可って途中からでも許可できるファイル増やせる?
659デフォルトの名無しさん
2020/02/29(土) 17:58:43.86ID:pn9TVa1r エラー聞き取れませんでした
660デフォルトの名無しさん
2020/03/04(水) 19:02:19.80ID:DcIeIIMH 豚切りスマソ
ファイル名の同じpdfファイルを毎月同じ日にダウンロードして、Googleドライブに保存したいんだけど、そんなことできる?
例えばこれ
https://www.mizuhobank.co.jp/market/pdf/mid/midcba.pdf
ファイル名の同じpdfファイルを毎月同じ日にダウンロードして、Googleドライブに保存したいんだけど、そんなことできる?
例えばこれ
https://www.mizuhobank.co.jp/market/pdf/mid/midcba.pdf
661デフォルトの名無しさん
2020/03/04(水) 19:24:29.51ID:RbQqNGaU test
662デフォルトの名無しさん
2020/03/07(土) 09:26:16.72ID:1EWZ7xdf >>660
できる
できる
663デフォルトの名無しさん
2020/03/07(土) 10:04:47.92ID:M14eFJOx GASで他人が作ったライブラリを追加したのですが、その内容を確認する方法はあるのでしょうか?あるのでしたらその方法を教えていただきたいと思います。
Twitterに投稿をするアプリの紹介している同人誌があり
Authを設定してそのライブラリに渡すことで実現しています。
ただ、そのライブラリは作者が開発したのもですので、
抜き取られていないかどうかを確認したいと思っています。
Twitterに投稿をするアプリの紹介している同人誌があり
Authを設定してそのライブラリに渡すことで実現しています。
ただ、そのライブラリは作者が開発したのもですので、
抜き取られていないかどうかを確認したいと思っています。
664デフォルトの名無しさん
2020/03/07(土) 15:43:27.49ID:QH/1z6a5 今日初めてスプレッドシートでスクリプトを書き始めたド初心者です
変数にちゃんと値が入ってるか確認するためにLogger.log()でこまめにログを開くんですが、ログ表示にすごく時間がかかったり、スクリプトの中間辺りのLogger.log()だけ表示されていたりします
10〜20秒位待ってログを開き直すとちゃんと表示されるのですが、毎回待たされるのが地味にストレスです
素早く正しく表示させる方法はありますか?
ちなみに変数に値を入れて、その中身を表示させるだけのシンプルなものでもそれなりに待たされます
あとログウィンドウを移動させる際に、ウィンドウを持てる箇所の当たり判定が小さいのと、マウスカーソルが矢印から手に変わらないから、なかなか一発で動かせないのと、動かしたところでスクリプト画面にフォーカスしないからスクロール出来ないのも憎しみポイントですね
変数にちゃんと値が入ってるか確認するためにLogger.log()でこまめにログを開くんですが、ログ表示にすごく時間がかかったり、スクリプトの中間辺りのLogger.log()だけ表示されていたりします
10〜20秒位待ってログを開き直すとちゃんと表示されるのですが、毎回待たされるのが地味にストレスです
素早く正しく表示させる方法はありますか?
ちなみに変数に値を入れて、その中身を表示させるだけのシンプルなものでもそれなりに待たされます
あとログウィンドウを移動させる際に、ウィンドウを持てる箇所の当たり判定が小さいのと、マウスカーソルが矢印から手に変わらないから、なかなか一発で動かせないのと、動かしたところでスクリプト画面にフォーカスしないからスクロール出来ないのも憎しみポイントですね
665デフォルトの名無しさん
2020/03/08(日) 00:48:31.73ID:5hjyLnS+666デフォルトの名無しさん
2020/03/09(月) 10:51:06.63ID:p6Z1SMlj667デフォルトの名無しさん
2020/03/09(月) 11:19:24.38ID:ZzLE3RUo668デフォルトの名無しさん
2020/03/10(火) 21:35:41.05ID:ZDCF6+eP669デフォルトの名無しさん
2020/03/12(木) 00:07:44.47ID:Ajw/pKZ3 >>667だけど追加で報告
V8エンジンをオフにしてると、includesって命令使った時だけエラーが出ます
if(!ran.includes(temp)) こう書いてある行でエラーになるけど、V8オフにすると問題無し
ranもtempも直前でログ表示してますが、中身に問題はありません
そしてまた質問なんですが、
特定のセルを変更した時だけスクリプトを走らせる事は出来ますか?
onEditだとどのシートのどのセルいじってもファンクション呼んじゃう
A1のセルでファンクションA、B1ならBを呼ぶ
あるいは
セルA1のプルダウンがAならA、BならBみたいにして、スマホからでも動かしたいんです
各シートは普通に手入力で修正追加する表計算として使いたいので、いちいちファンクション呼んでたらサーバーが地獄です
htmlと絡めてwebアプリ的にするしか無いんですかね?
V8エンジンをオフにしてると、includesって命令使った時だけエラーが出ます
if(!ran.includes(temp)) こう書いてある行でエラーになるけど、V8オフにすると問題無し
ranもtempも直前でログ表示してますが、中身に問題はありません
そしてまた質問なんですが、
特定のセルを変更した時だけスクリプトを走らせる事は出来ますか?
onEditだとどのシートのどのセルいじってもファンクション呼んじゃう
A1のセルでファンクションA、B1ならBを呼ぶ
あるいは
セルA1のプルダウンがAならA、BならBみたいにして、スマホからでも動かしたいんです
各シートは普通に手入力で修正追加する表計算として使いたいので、いちいちファンクション呼んでたらサーバーが地獄です
htmlと絡めてwebアプリ的にするしか無いんですかね?
670デフォルトの名無しさん
2020/03/12(木) 01:52:13.27ID:cgiY/N73671デフォルトの名無しさん
2020/03/12(木) 13:27:32.42ID:j9jxQsAx672デフォルトの名無しさん
2020/03/12(木) 15:12:36.46ID:Aj8VN0Uo GASファイルを他の人にアップすることって可能?
673デフォルトの名無しさん
2020/03/13(金) 18:14:34.70ID:5AsLHuse スプレッドシートに紐づけしたGASって他のスプレッドシート参照できないんだな
いい勉強になったわ、自動化する時はGAS単独で作るしかないな
いい勉強になったわ、自動化する時はGAS単独で作るしかないな
674デフォルトの名無しさん
2020/03/13(金) 18:40:07.18ID:cgyHyg3G excelの何でもできる、痒いところに手が届くに慣れてると
Googleスプレッドシートには絶望しかない
Googleスプレッドシートには絶望しかない
675デフォルトの名無しさん
2020/03/13(金) 18:58:46.30ID:8vXfd8Hl やっぱりマクロで組んでよかった
676デフォルトの名無しさん
2020/03/13(金) 21:44:39.56ID:8A2FfsSZ677デフォルトの名無しさん
2020/03/14(土) 01:13:49.59ID:UZOR73gH >>673
できるでしょ
できるでしょ
678デフォルトの名無しさん
2020/03/14(土) 01:18:50.24ID:UZOR73gH >>674
どこまでいってもOpenDocument派生だからExcelより同じ派生のLibreOfficeにあるCalcが近しいから仕方ないかと
どこまでいってもOpenDocument派生だからExcelより同じ派生のLibreOfficeにあるCalcが近しいから仕方ないかと
679デフォルトの名無しさん
2020/03/14(土) 03:57:51.59ID:B3THKCTN >>677
いややってみたけど無理だったよ、スプレッドシートに紐づけしてるマクロの中で他のスプレッドシート開こうとしたら怒られたし権限がないって
いややってみたけど無理だったよ、スプレッドシートに紐づけしてるマクロの中で他のスプレッドシート開こうとしたら怒られたし権限がないって
680デフォルトの名無しさん
2020/03/14(土) 04:45:08.26ID:B3THKCTN681デフォルトの名無しさん
2020/03/14(土) 15:29:14.23ID:UZOR73gH >>680
変更履歴から直近の変更点は確認できるし、今後も同じような事にならんようになにが原因でできてなかったのかは明確にしとくと自分自身のために良いよ
変更履歴から直近の変更点は確認できるし、今後も同じような事にならんようになにが原因でできてなかったのかは明確にしとくと自分自身のために良いよ
682デフォルトの名無しさん
2020/03/15(日) 15:57:53.08ID:uLtpsypH >>532
ここしかないのかな(´・ω・`)
ここしかないのかな(´・ω・`)
683デフォルトの名無しさん
2020/03/23(月) 12:05:18.59ID:Y7MCXH01 cat テキスト | grep hogehoge 相当は
テキスト.match(/.*hogehoge.*/g);
でよさそうなのですが
grep -v hogehogeに相当するのをGASでどう書けばいいのかわからないのですが、
どなたか教えてもらえないでしょうか
テキスト.match(/.*hogehoge.*/g);
でよさそうなのですが
grep -v hogehogeに相当するのをGASでどう書けばいいのかわからないのですが、
どなたか教えてもらえないでしょうか
684デフォルトの名無しさん
2020/03/23(月) 12:47:32.23ID:jGS2rL5b Ruby なら、
text = <<"EOT"
abc
あいう
xyz
EOT
re = /あい/
text.each_line do | line | # 1行ずつ処理する
line.strip! # trim
puts line unless line.match( re ) # マッチしなければ
end
出力
abc
xyz
text = <<"EOT"
abc
あいう
xyz
EOT
re = /あい/
text.each_line do | line | # 1行ずつ処理する
line.strip! # trim
puts line unless line.match( re ) # マッチしなければ
end
出力
abc
xyz
685デフォルトの名無しさん
2020/03/23(月) 21:04:49.02ID:iyDg9ARV >>683
テキスト.match(/^(?!.*hogehoge.*).*$/gm);
https://regex101.com/r/G4zn3F/1
GASでは試してないんだけど
ES3でもnegative lookaheadには対応してたはず
v8ならまず問題ない
テキスト.match(/^(?!.*hogehoge.*).*$/gm);
https://regex101.com/r/G4zn3F/1
GASでは試してないんだけど
ES3でもnegative lookaheadには対応してたはず
v8ならまず問題ない
686デフォルトの名無しさん
2020/03/23(月) 23:19:42.98ID:dwpdUDvb VBAスレで相手にされなくなったからって、GASスレまで出向いてこないでくださいな。
687デフォルトの名無しさん
2020/03/24(火) 11:22:47.32ID:JQ7YmFwi そろそろ潮時
688デフォルトの名無しさん
2020/04/03(金) 23:41:32.27ID:r3V2xUir GAS極めようと思ったら、google cloud platformは必須かな?
689デフォルトの名無しさん
2020/04/04(土) 06:53:26.32ID:k/Lp30S7 google cloud platformってなぁに?
690デフォルトの名無しさん
2020/04/06(月) 10:04:22.06ID:o3kGovlh GCPとGASは別物
GCP使っててもGASは使わん事のほうが多い、逆も同じ
GCP使っててもGASは使わん事のほうが多い、逆も同じ
691デフォルトの名無しさん
2020/04/07(火) 00:19:15.67ID:yujFP2M7 GASでTwitterbot連動して投稿とかもうわけわかんねえ〜
692デフォルトの名無しさん
2020/04/07(火) 01:50:45.93ID:JEfC632I >>691
GASでInstagram連携はめんどうだけど、Twitter連携は楽だろ
GASでInstagram連携はめんどうだけど、Twitter連携は楽だろ
693デフォルトの名無しさん
2020/04/07(火) 03:46:14.96ID:yujFP2M7 何故かツイートコメントに改行コード入れても改行されないし投稿時間は毎回変える感じだったら、改行なんてツイッターの中で何が改行コードなのかわからねえし参考になる記事見て同じコードで解決にならなかったわ
694デフォルトの名無しさん
2020/04/07(火) 08:11:25.19ID:d1kIoLlr695デフォルトの名無しさん
2020/04/07(火) 12:51:23.32ID:yujFP2M7 >>694
なるほど、\nで改行したいって言ってたけど理論上無理だったのか
なるほど、\nで改行したいって言ってたけど理論上無理だったのか
696デフォルトの名無しさん
2020/04/07(火) 13:31:44.40ID:fttEuirm 馬鹿には無理
697デフォルトの名無しさん
2020/04/07(火) 17:48:04.87ID:ivfSfUTD 改行コードは、
Windows なら、\r\n
Linux なら、\n
HTML なら、br タグ。<br>
Windows なら、\r\n
Linux なら、\n
HTML なら、br タグ。<br>
698デフォルトの名無しさん
2020/04/08(水) 07:37:08.96ID:lp3B4EHz GASはJavaScript使えるからVBより好きなんだけど、スマホで編集・実行出来ないのが辛い
699デフォルトの名無しさん
2020/04/08(水) 11:07:24.34ID:yTKDGYFG 定期的に居るけど、そこまでスマホでプログラムを編集実行するか?
プログラム書くのにスマホでとか効率悪すぎだろ
プログラム書くのにスマホでとか効率悪すぎだろ
700デフォルトの名無しさん
2020/04/08(水) 12:59:45.03ID:pfSjPaup VBAと比べてどうですか?
細かい事やろうとするとやはりVBAじゃないとできないかな〜と思ってます。
ただ、利用者環境にOfficeのインストールの手間がかからない事を考えると
今後はGoogleスプレッドシートが一番なのかな
細かい事やろうとするとやはりVBAじゃないとできないかな〜と思ってます。
ただ、利用者環境にOfficeのインストールの手間がかからない事を考えると
今後はGoogleスプレッドシートが一番なのかな
701デフォルトの名無しさん
2020/04/08(水) 13:04:44.96ID:lWfV0IAd VBAは蕁麻疹出るけど
GASは掻いてて気持ち良い
だがどんな場合でもGASが勝ってるかと言えばそうでもない
GASは掻いてて気持ち良い
だがどんな場合でもGASが勝ってるかと言えばそうでもない
702デフォルトの名無しさん
2020/04/08(水) 14:07:32.20ID:pfSjPaup >>701
JavaScriptは慣れてますが
GASは初めてです。
おすすめの学習サイトがあったら教えてください。
インストールの手間が要らないので今後は、Googleスプレッドシートが覇権をとると思います。
JavaScriptは慣れてますが
GASは初めてです。
おすすめの学習サイトがあったら教えてください。
インストールの手間が要らないので今後は、Googleスプレッドシートが覇権をとると思います。
703デフォルトの名無しさん
2020/04/08(水) 20:32:13.89ID:lp3B4EHz >>699
「プログラム」レベルの編集は流石に誰も望まないだろ
拷問だぞw
ちょっと出先でスクリプトの修正が出来ればいいんだよ
そしてスマホでスクリプトの編集が出来ない=何かあった時に対応出来ないからって理由なのか、スマホでマクロが動かないのは普通に不便じゃない?
「プログラム」レベルの編集は流石に誰も望まないだろ
拷問だぞw
ちょっと出先でスクリプトの修正が出来ればいいんだよ
そしてスマホでスクリプトの編集が出来ない=何かあった時に対応出来ないからって理由なのか、スマホでマクロが動かないのは普通に不便じゃない?
704デフォルトの名無しさん
2020/04/10(金) 20:01:31.97ID:GEPNEjLB >>702
スプレッドシートとの連携でGAS使いたいならやりたい事次第で覚え方変わるかと
V8に対応したいなら本家リファレンス1択
巷に出回ってるのは旧バージョンでの解説
GASはJavaScriptより使えるオブジェクトが絞られてたり構文の書き方が微妙に違ったりするから、変に嵌らないためにはどっち選んでも本家リファレンスは読むべき
スプレッドシートとの連携でGAS使いたいならやりたい事次第で覚え方変わるかと
V8に対応したいなら本家リファレンス1択
巷に出回ってるのは旧バージョンでの解説
GASはJavaScriptより使えるオブジェクトが絞られてたり構文の書き方が微妙に違ったりするから、変に嵌らないためにはどっち選んでも本家リファレンスは読むべき
705デフォルトの名無しさん
2020/04/10(金) 21:37:15.67ID:oBjEAOlb706デフォルトの名無しさん
2020/04/10(金) 22:41:48.79ID:LG9l2UEQ 何で微妙に違う必要があるんだろうな。
VBAとVBSもそう。
微妙に違うことに何のメリットがあるのか。
VBAとVBSもそう。
微妙に違うことに何のメリットがあるのか。
707デフォルトの名無しさん
2020/04/11(土) 00:39:48.95ID:zOl1Pfip708デフォルトの名無しさん
2020/04/11(土) 07:35:40.59ID:xPITD/62 >>706
VBAはVB6派生でVBSとはもともと設計から違うから、その2つは比較するもんではない
VBAはVB6派生でVBSとはもともと設計から違うから、その2つは比較するもんではない
709デフォルトの名無しさん
2020/04/11(土) 08:39:59.18ID:BbiRDQqi 設計を分ける必要があったの?
完全に同じか、全然違うならわかるが、
8割くらい似せるって何の意味があるんだろう。
完全に同じか、全然違うならわかるが、
8割くらい似せるって何の意味があるんだろう。
710デフォルトの名無しさん
2020/04/11(土) 10:18:26.09ID:04DXL3Db 質問 gasでpwa作れますか?アイコンとかどうすればいいの?sw.jsは?
711デフォルトの名無しさん
2020/04/12(日) 02:51:36.98ID:eC/oIIb+712デフォルトの名無しさん
2020/05/11(月) 18:01:42.60ID:WhXpohRR Google Formで条件分岐した先の選択肢をSpread Sheetから読み込んでFormを自動作成することってできます?
できそうなら方法を教えていただきたいです
具体的には設問1はプルダウンで47都道府県を回答させてそれに応じて設問2は分岐
設問2は東京の人なら東京に関しての設問をSpread Sheetから読み込ませて作成するイメージです
できそうなら方法を教えていただきたいです
具体的には設問1はプルダウンで47都道府県を回答させてそれに応じて設問2は分岐
設問2は東京の人なら東京に関しての設問をSpread Sheetから読み込ませて作成するイメージです
713デフォルトの名無しさん
2020/05/11(月) 18:16:31.54ID:MhpqGE2N OK
やるがよい
やるがよい
714デフォルトの名無しさん
2020/06/16(火) 21:15:21.68ID:72JD20DA google drive で、あるフォルダの中に同じ名前のサブフォルダが沢山ある場合にそれらを結合してくれるスクリプトを作りたいんですが、参考になる記事などありませんでしょうか?
サブフォルダa
サブフォルダa
サブフォルダa
サブフォルダb
サブフォルダb
を
サブフォルダa
サブフォルダb
にしたいです。サブフォルダたちの中身は消さずに移動させたいです。
サブフォルダa
サブフォルダa
サブフォルダa
サブフォルダb
サブフォルダb
を
サブフォルダa
サブフォルダb
にしたいです。サブフォルダたちの中身は消さずに移動させたいです。
715デフォルトの名無しさん
2020/06/17(水) 03:30:26.35ID:9RQxAjph716デフォルトの名無しさん
2020/06/17(水) 03:35:08.78ID:H0Dcbe9T 1つのフォルダ内に、同じ名前のサブフォルダが2つ以上作れるの?
そんなファイルシステムを見た事がない
そんなファイルシステムを見た事がない
717デフォルトの名無しさん
2020/06/17(水) 04:34:34.17ID:9RQxAjph >>716
ラベルみたいな感じだから、フォルダ名もファイル名も重複可能なのよ
1つのファイルを(シンボリックリンクではなく)複数フォルダに格納したりもできるので、普通のファイルシステム感覚で使うと戸惑うことがある
ラベルみたいな感じだから、フォルダ名もファイル名も重複可能なのよ
1つのファイルを(シンボリックリンクではなく)複数フォルダに格納したりもできるので、普通のファイルシステム感覚で使うと戸惑うことがある
718デフォルトの名無しさん
2020/06/17(水) 09:21:58.91ID:GES6ctGC フォルダ名もファイル名も当てに出来ない
頼りになるのはIDだけ
しかもIDには階層構造が無いω
頼りになるのはIDだけ
しかもIDには階層構造が無いω
719デフォルトの名無しさん
2020/06/17(水) 16:52:03.32ID:EftflnE3720デフォルトの名無しさん
2020/06/22(月) 15:30:25.53ID:uOpuzf64 >>714 です
毎月同じ名前のフォルダをGoogleドライブにアップロードすると、同じ名前のフォルダが2つずつできてしまい困っていたため、このような質問に至りました。
このスクリプトを作って実験してみようも思い、
同じ名前のフォルダを複数アップロードしようとすると、「更新しますか?」というメッセージが出てきて、「更新」を選ぶと、重複なくファイルやフォルダがアップロードされました。
したがってスクリプトは不要になってしまいました。
私の記憶だと以前は特に尋ねられることもなく、同じ名前のフォルダやファイルが二重に出来てしまっていた気がするのですが、、、、改善されたんですかね?
毎月同じ名前のフォルダをGoogleドライブにアップロードすると、同じ名前のフォルダが2つずつできてしまい困っていたため、このような質問に至りました。
このスクリプトを作って実験してみようも思い、
同じ名前のフォルダを複数アップロードしようとすると、「更新しますか?」というメッセージが出てきて、「更新」を選ぶと、重複なくファイルやフォルダがアップロードされました。
したがってスクリプトは不要になってしまいました。
私の記憶だと以前は特に尋ねられることもなく、同じ名前のフォルダやファイルが二重に出来てしまっていた気がするのですが、、、、改善されたんですかね?
721デフォルトの名無しさん
2020/07/01(水) 13:06:41.87ID:gceVcA/H Googleフォームの回答スプレッドシートで、回答上限数を設けたいです。
function myFunction() {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spreadsheet.getActiveSheet();
var value = sheet.getRange("N2").getValue();
if(value >= 4) {
form.setAcceptingResponses(false);
}
}
N2にSUMIFでの計算結果を入れています。
上記スクリプトでif(value >= 4) { でエラーが出てしまいます。
どうしたらSUMIFの結果であるN2が「4」以上になったらフォームを閉じることが出来るのでしょうか?
function myFunction() {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spreadsheet.getActiveSheet();
var value = sheet.getRange("N2").getValue();
if(value >= 4) {
form.setAcceptingResponses(false);
}
}
N2にSUMIFでの計算結果を入れています。
上記スクリプトでif(value >= 4) { でエラーが出てしまいます。
どうしたらSUMIFの結果であるN2が「4」以上になったらフォームを閉じることが出来るのでしょうか?
722デフォルトの名無しさん
2020/07/01(水) 13:10:17.98ID:IfUrt5hg parseint
723デフォルトの名無しさん
2020/07/08(水) 18:10:45.46ID:B6DwYS1M spreadsheetで、セルの罫線の設定有無を取得したいのですが、
setBorder()はあってもgetBorder()が見当たりません
罫線の有無を取得する方法は何かありませんか
setBorder()はあってもgetBorder()が見当たりません
罫線の有無を取得する方法は何かありませんか
724蟻人間 ◆T6xkBnTXz7B0
2020/07/08(水) 19:08:08.66ID:wtc6YQgJ >>723
簡単じゃないようだ。
https://stackoverflow.com/questions/48754286/retrieving-google-sheets-cell-border-style-programmatically
事前にSheets APIを有効にする必要がある。
簡単じゃないようだ。
https://stackoverflow.com/questions/48754286/retrieving-google-sheets-cell-border-style-programmatically
事前にSheets APIを有効にする必要がある。
725デフォルトの名無しさん
2020/07/09(木) 13:54:25.74ID:eUqS/uTt726デフォルトの名無しさん
2020/07/23(木) 00:44:11.36ID:9dNzv7wt GASを今日知ったレベルですが
複数1000件程度のpdfファイルがあります。
そのタイトルを一気に1つのスプレッドシートに入れることはできますか?
可能であればそのフォルダの階層別のタイトルも入るのがベストですが、難しければファイルにタイトルのみで充分です。
よろしくお願いいたします。
複数1000件程度のpdfファイルがあります。
そのタイトルを一気に1つのスプレッドシートに入れることはできますか?
可能であればそのフォルダの階層別のタイトルも入るのがベストですが、難しければファイルにタイトルのみで充分です。
よろしくお願いいたします。
727デフォルトの名無しさん
2020/07/23(木) 00:44:34.10ID:9dNzv7wt ファイルはもちろんGoogleドライブに入っています。
728デフォルトの名無しさん
2020/07/23(木) 00:45:59.77ID:4rdlbzE6 プロセスの秒数制限に引っかかるとかあったな
1000件くらいなら問題無いか
1000件くらいなら問題無いか
729デフォルトの名無しさん
2020/07/23(木) 03:09:29.37ID:8onqYysW ファイル名はgasで取得するよりローカルで取得するのが楽なのでは
730デフォルトの名無しさん
2020/07/23(木) 08:38:50.13ID:R7OYz0iq ありがとうございます。ローカルというとWindows側での操作ですね。調べてみます。
他にもGoogleフォームでタイトルが違うだけのものを100くらい作らないといけません。
質問ばかりですみませんこの件で消えますので
他にもGoogleフォームでタイトルが違うだけのものを100くらい作らないといけません。
質問ばかりですみませんこの件で消えますので
731デフォルトの名無しさん
2020/09/26(土) 16:10:20.48ID:PfG/B09Z GASの開発環境を英語にするのは、Googleアカウントの言語を変更する以外に方法はありませんか?
目的はExceptionなどのエラーを英語で出力してほしいんです。
今日はプロパティの設定でバグが出ているようなんですが、以下のように日本語だと本来の意味とはニュアンスが異なりますし、IssueTrackerで「Data storag error」検索したらすでに報告されているのが分かったので余計な問題判別をせずに済みます。
日本語「データの保存容量エラー」
英語「Data storage error」
目的はExceptionなどのエラーを英語で出力してほしいんです。
今日はプロパティの設定でバグが出ているようなんですが、以下のように日本語だと本来の意味とはニュアンスが異なりますし、IssueTrackerで「Data storag error」検索したらすでに報告されているのが分かったので余計な問題判別をせずに済みます。
日本語「データの保存容量エラー」
英語「Data storage error」
732デフォルトの名無しさん
2020/10/23(金) 18:22:51.85ID:bYAKNzy9 gmailにおいて、添付を外して転送ということって可能でしょうか?
調べてみた所添付の付け方ばかりが出てきてしまい...
調べてみた所添付の付け方ばかりが出てきてしまい...
733LINE-LaBot
2020/11/17(火) 22:09:42.09ID:oYeoYLE+734デフォルトの名無しさん
2021/01/21(木) 19:41:41.78 google doumentで画像から文字起こしとか簡単にできそうですね
他にいい方法があるのかもしれませんが
他にいい方法があるのかもしれませんが
735デフォルトの名無しさん
2021/01/28(木) 22:05:48.39ID:2E/cb6LF 共有ドライブのファイルをマイドライブにコピーするにはどうすればいいですか?
ずっと前は右クリック→コピーを作成 で出来ていた気がするのですが、
何故か今はショートカットが作成されてしまい、コピーが出来ないようです
ずっと前は右クリック→コピーを作成 で出来ていた気がするのですが、
何故か今はショートカットが作成されてしまい、コピーが出来ないようです
736デフォルトの名無しさん
2021/02/26(金) 14:16:01.31ID:uwtwTRSf GAS触りたての赤ちゃんですが
スプレッドシートからキーワード検索してHTMLに出力しようと
少し作ってみたらクッソ時間がかかるんですけどそういう使い方は向いてないんですかね?
プログラムの書き方が悪いだけなら良いのですが
本ちゃんのスプレッドシートは40000行くらいになります
スプレッドシートからキーワード検索してHTMLに出力しようと
少し作ってみたらクッソ時間がかかるんですけどそういう使い方は向いてないんですかね?
プログラムの書き方が悪いだけなら良いのですが
本ちゃんのスプレッドシートは40000行くらいになります
737デフォルトの名無しさん
2021/02/26(金) 18:51:11.59ID:yh0R3Tzg スクリプトの実行時間が何十秒かを過ぎると処理を終了する仕様があったような気がする
738デフォルトの名無しさん
2021/02/26(金) 19:15:51.46ID:X0cz5fa1 >>736
そんなかからんと思うけどその時間とキーワードと各セルの文字数までわからんとなんとも言えん
そんなかからんと思うけどその時間とキーワードと各セルの文字数までわからんとなんとも言えん
739デフォルトの名無しさん
2021/02/26(金) 19:19:22.27ID:gv3Dvayc どなたか>>735をお願いします
740デフォルトの名無しさん
2021/02/26(金) 19:22:12.53ID:yh0R3Tzg >>735
スレ違い
スレ違い
741デフォルトの名無しさん
2021/02/26(金) 19:50:13.87ID:iwep5/hd742デフォルトの名無しさん
2021/03/01(月) 10:12:40.06ID:vgd9986a いったん全部読み込んで処理すればいいかと。
本番と同規模のダミーデータでテスト忘れず。
本番と同規模のダミーデータでテスト忘れず。
743デフォルトの名無しさん
2021/03/01(月) 10:25:00.27ID:rO9qQ6pi >>741
HTML側でスプレッドシート開いて二次元配列に放り込んでからテーブルに出力してんですけど実用に耐えないくらい時間かかります。
functionで二次元配列に入れるべきなのかな
配列の受け渡しとかいまいちわかんない
HTML側でスプレッドシート開いて二次元配列に放り込んでからテーブルに出力してんですけど実用に耐えないくらい時間かかります。
functionで二次元配列に入れるべきなのかな
配列の受け渡しとかいまいちわかんない
744デフォルトの名無しさん
2021/03/01(月) 12:44:15.12ID:V9NClIIm コード載せたら添削してあげるよ
745デフォルトの名無しさん
2021/03/01(月) 17:03:50.84ID:PbAWyOdW APIを使った方がいいかもね
746デフォルトの名無しさん
2021/03/03(水) 18:08:09.09ID:/zPRpQHx Browser.msgBox('hoge');
var ui = SpreadsheetApp.getUi();
ui.alert('hoge');
どっちもAndroidスプレッドシートアプリでは動かず一時停止状態のままになってしまいます
どうすれば回避できますかね?
処理が終わるまでshowModalDialogで操作させないようにする処理も泥アプリでは動かなくて困っています…
var ui = SpreadsheetApp.getUi();
ui.alert('hoge');
どっちもAndroidスプレッドシートアプリでは動かず一時停止状態のままになってしまいます
どうすれば回避できますかね?
処理が終わるまでshowModalDialogで操作させないようにする処理も泥アプリでは動かなくて困っています…
747デフォルトの名無しさん
2021/03/03(水) 21:30:50.23ID:hlvdZ6yU >>746
スマホでは色々制限があって無理です
スマホでは色々制限があって無理です
748デフォルトの名無しさん
2021/03/05(金) 11:04:43.54ID:wmkFGJMv 詳しい方助けてください。
当方結婚式のプロフィールムービーを制作しています。
今後、Googleフォームを使って、テロップ入力、写真をお客様自身でアップロードする仕組みを作れと言われて困っています。
問題となっているのが、フォームでの回答後、アップロードした写真がファイル名しかわからない点です。
そこで、アップロードした写真ファイルを一覧化し、PDF化したうえでお客様へ自動返信出来ないかと考えてみました。
GASを使ってなんとか・・と思いましたが、ネットを探してみても方法が見つからず、途方にくれています。
どなたかお力添えをお願いできないでしょうか?
当方結婚式のプロフィールムービーを制作しています。
今後、Googleフォームを使って、テロップ入力、写真をお客様自身でアップロードする仕組みを作れと言われて困っています。
問題となっているのが、フォームでの回答後、アップロードした写真がファイル名しかわからない点です。
そこで、アップロードした写真ファイルを一覧化し、PDF化したうえでお客様へ自動返信出来ないかと考えてみました。
GASを使ってなんとか・・と思いましたが、ネットを探してみても方法が見つからず、途方にくれています。
どなたかお力添えをお願いできないでしょうか?
749デフォルトの名無しさん
2021/03/05(金) 16:48:28.45ID:tfvc3NNv スプレッドシートに出力してそれをpdf化すれば?
750デフォルトの名無しさん
2021/03/06(土) 02:12:47.82ID:D36VxduV 何でフォームじゃなきゃ駄目なのか分からんが、
そんな指示を出すような奴は、
フォームとフォームっぽい何かがあったとしても、違いなんか分かりゃしないぞ。
そんな指示を出すような奴は、
フォームとフォームっぽい何かがあったとしても、違いなんか分かりゃしないぞ。
751デフォルトの名無しさん
2021/03/06(土) 17:23:31.98ID:eKT9Xq9d752デフォルトの名無しさん
2021/04/06(火) 23:13:17.50ID:ao+gKvtS scrapingのライブラリでParser とcheeriogs以外で良いのあります?
cheerioよさそうだけどjquery知ってる前提でドキュメントが無くてjquery知らないからきつい。メソッドとかjqueryのやつ使えるの?
cheerioよさそうだけどjquery知ってる前提でドキュメントが無くてjquery知らないからきつい。メソッドとかjqueryのやつ使えるの?
753デフォルトの名無しさん
2021/04/13(火) 17:26:12.26ID:o3TSl1rF 自宅からスプレッドシートのdoPostに1分毎にテキストを送ってセルに書き込むだけの実験中なのですが、
実行数の所からログを確認すると2000回に1回くらいステータスが「失敗しました」になっています。
自宅の記録ではステータスコードは200が返ってきています。
doPost内をtry~catchにいれてエラーメッセージを書き込もうとしましたが、何も書き込まれていませんでした。
doPostが起動していない…?
なぜ失敗しているか分かる方いませんか。
実行数の所からログを確認すると2000回に1回くらいステータスが「失敗しました」になっています。
自宅の記録ではステータスコードは200が返ってきています。
doPost内をtry~catchにいれてエラーメッセージを書き込もうとしましたが、何も書き込まれていませんでした。
doPostが起動していない…?
なぜ失敗しているか分かる方いませんか。
754デフォルトの名無しさん
2021/04/13(火) 20:44:13.01ID:YlnYj74B >>748
自作フォームは難しい。
様々なページを作らないといけない
要するにファイルアップローダー、
TeraTerm, Putty みたいな画面が欲しいのでしょ
各顧客用のフォルダを作って、そこへアップロードするのでしょ
自作するのはキツイ。
何かのサービスを使うべき
自作フォームは難しい。
様々なページを作らないといけない
要するにファイルアップローダー、
TeraTerm, Putty みたいな画面が欲しいのでしょ
各顧客用のフォルダを作って、そこへアップロードするのでしょ
自作するのはキツイ。
何かのサービスを使うべき
755デフォルトの名無しさん
2021/04/13(火) 21:04:50.52ID:YlnYj74B >>752
jQuery で、スクレイピングするだけなら、
要素の取得、HTML・Text の所だけ読めばよい。
全部の文書を、読む必要はない
let abc = $( '#abc' ).html( );
console.log( abc );
$( 'CSS セレクター' ) を書けば、jQuery オブジェクトが取得できる。
jQuery( 'CSS セレクター' )でも良い
これを実行してみれば?
console.log( window.$ );
console.log( window.jQuery );
jQuery で、スクレイピングするだけなら、
要素の取得、HTML・Text の所だけ読めばよい。
全部の文書を、読む必要はない
let abc = $( '#abc' ).html( );
console.log( abc );
$( 'CSS セレクター' ) を書けば、jQuery オブジェクトが取得できる。
jQuery( 'CSS セレクター' )でも良い
これを実行してみれば?
console.log( window.$ );
console.log( window.jQuery );
756デフォルトの名無しさん
2021/04/13(火) 21:11:20.27ID:YlnYj74B757デフォルトの名無しさん
2021/04/13(火) 21:28:22.61ID:c7k7neBn なんでjsの話してんの
758デフォルトの名無しさん
2021/04/22(木) 01:56:49.59ID:zbsSdEd/ GASからWindows APIを介してWindowsアプリに指示してWindowsアプリの自動操縦て出来ます?
これのスプレッドシート+GAS版を作りたいんですが。
https://youtu.be/r_9JLzXMsk4
これのスプレッドシート+GAS版を作りたいんですが。
https://youtu.be/r_9JLzXMsk4
759デフォルトの名無しさん
2021/04/22(木) 21:51:19.63ID:IEn85Cov スプレッドシートのrange.getValues()のreturnで日付が勝手にDate object に変換キャストされるのいらんのだけど
文字列にできますか
文字列にできますか
760デフォルトの名無しさん
2021/04/22(木) 22:12:53.54ID:Bcy1rpDS >>759
Utilities.formatDateで変換してください
Utilities.formatDateで変換してください
761デフォルトの名無しさん
2021/04/23(金) 01:28:15.06ID:KvwPc6n1 やっぱ自分でstringに戻すしかないのですね
どうも
どうも
762デフォルトの名無しさん
2021/04/23(金) 01:36:47.27ID:Mr1QFRKK763デフォルトの名無しさん
2021/05/19(水) 06:26:47.48ID:+jFbNy+f トリガーを使って、"Sheet1"というシートのA1セルが変更された時のみ他の処理をさせたいのですが、
どのように掛けば良いでしょうか
SpreadsheetApp.getActive();
からシート名も取れると思いますが、引数からオブジェクトを指定するなどはできないでしょうか
VBAで書くと以下のような感じです
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name = "Sheet1" Then
Debug.Print "sheet1が変更されました"
End If
End Sub
どのように掛けば良いでしょうか
SpreadsheetApp.getActive();
からシート名も取れると思いますが、引数からオブジェクトを指定するなどはできないでしょうか
VBAで書くと以下のような感じです
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name = "Sheet1" Then
Debug.Print "sheet1が変更されました"
End If
End Sub
764デフォルトの名無しさん
2021/05/19(水) 09:54:24.41ID:iHfxsQ4v >>763
function onEdit( e ) {
if (e.source.getSheetByName() === "Sheet1"
&& e.range.getRow() === 1
&& e.range.getColumn() === 1) {
//なんか処理
}
}
function onEdit( e ) {
if (e.source.getSheetByName() === "Sheet1"
&& e.range.getRow() === 1
&& e.range.getColumn() === 1) {
//なんか処理
}
}
765デフォルトの名無しさん
2021/05/19(水) 21:19:17.86ID:+jFbNy+f766デフォルトの名無しさん
2021/05/25(火) 09:12:15.05ID:7Zlc4Jvy function pswV1(contract){
var url = "https://api.pancakeswap.info/api/tokens/" + contract;
var content = UrlFetchApp.fetch(url).getContentText("UTF-8");
var obj = JSON.parse(content);
return Number(obj.data.price);
}
この関数作って使ってるんだけど、
定期的に再実行させるにはどうしたら良いのかな?
可能なら1分に1回再実行させたい。
var url = "https://api.pancakeswap.info/api/tokens/" + contract;
var content = UrlFetchApp.fetch(url).getContentText("UTF-8");
var obj = JSON.parse(content);
return Number(obj.data.price);
}
この関数作って使ってるんだけど、
定期的に再実行させるにはどうしたら良いのかな?
可能なら1分に1回再実行させたい。
767デフォルトの名無しさん
2021/05/25(火) 12:30:25.88ID:UFi3lRqC トリガー使えばええやん
768デフォルトの名無しさん
2021/05/25(火) 14:37:01.15ID:7Zlc4Jvy769766
2021/05/25(火) 15:16:25.01ID:7Zlc4Jvy とりあえずトリガー設定してみたけど最短1時間しかないね。
取得してるのは仮想通貨のレートだから最長でも5分程度にはしておきたい。
取得してるのは仮想通貨のレートだから最長でも5分程度にはしておきたい。
770766
2021/05/25(火) 15:20:50.17ID:7Zlc4Jvy ごめんなさい。
1分ありました。
1分ありました。
771766
2021/05/25(火) 15:23:17.48ID:7Zlc4Jvy 何度もすまん。
無効な引数でエラーになる。
やはりセル内で使用する関数にトリガーは使えないのでは?
無効な引数でエラーになる。
やはりセル内で使用する関数にトリガーは使えないのでは?
772デフォルトの名無しさん
2021/05/25(火) 19:19:13.82ID:bqN1UUYu そのセルの情報も書け
773766
2021/05/25(火) 19:47:34.24ID:7Zlc4Jvy セル内は
=pswV1("0x27327672d1dc51f4dc58c9f413e1fa7e7ad8245e")
としています。
いまのところロード時とタブ切り替え時の任意リロード時のみ実行されます。
=pswV1("0x27327672d1dc51f4dc58c9f413e1fa7e7ad8245e")
としています。
いまのところロード時とタブ切り替え時の任意リロード時のみ実行されます。
774デフォルトの名無しさん
2021/05/25(火) 20:07:56.28ID:bqN1UUYu775766
2021/05/25(火) 20:25:01.51ID:7Zlc4Jvy >>774
複数あります。
いまのところ5個くらいですが日々変動します。
トリガーがダメならセル内から呼び出す関数からは引数とセル位置だけグローバル配列に入れておいて
トリガーから呼んだ関数でまとめて通信させる方法もあるのかなと考え始めてます。
まだ実装してないので動くかわかりませんが。
複数あります。
いまのところ5個くらいですが日々変動します。
トリガーがダメならセル内から呼び出す関数からは引数とセル位置だけグローバル配列に入れておいて
トリガーから呼んだ関数でまとめて通信させる方法もあるのかなと考え始めてます。
まだ実装してないので動くかわかりませんが。
776デフォルトの名無しさん
2021/05/25(火) 21:36:08.76ID:FW9zXdEp >>775
それか1分おきにどこでもいいからセル書き換えるようにすれば勝手に再計算されるのでは
それか1分おきにどこでもいいからセル書き換えるようにすれば勝手に再計算されるのでは
777デフォルトの名無しさん
2021/06/03(木) 05:38:31.48ID:B8Ey28oS GASでPhantom JS cloudで動的なページをスクレイピングする時に、どうやらページが重くて表示に時間がかかるため取得できない値があります
すでに表示されたサイトに対してjQueryで取得したりPythonとseleniumを使って
driver.get(url)
time.sleep(30)
html = driver.page_source
みたいに待機時間を作ればちゃんと取得できるので値は確かに存在しており、GASでうまくいかないのは待機時間がないせいだと思います
Phantom JS cloudでも待機時間を入れたいのですが可能でしょうか?どこに入れればよいのでしょうか?
すでに表示されたサイトに対してjQueryで取得したりPythonとseleniumを使って
driver.get(url)
time.sleep(30)
html = driver.page_source
みたいに待機時間を作ればちゃんと取得できるので値は確かに存在しており、GASでうまくいかないのは待機時間がないせいだと思います
Phantom JS cloudでも待機時間を入れたいのですが可能でしょうか?どこに入れればよいのでしょうか?
778デフォルトの名無しさん
2021/06/07(月) 12:08:43.93ID:tyfu3spt フォームの選択肢ラジオボタンA,B,Cの
それぞれにバラバラの回答数上限を設定する方法を教えてください。さらにラジオボタン横に残数があるとなお嬉しい
それぞれにバラバラの回答数上限を設定する方法を教えてください。さらにラジオボタン横に残数があるとなお嬉しい
779デフォルトの名無しさん
2021/06/07(月) 13:30:55.90ID:pl6618+T >>777
GAS は知らないけど、
Ruby, Selenium Webdriver, Nokogiri では、
要素の検索の timeout を長くするとか、
driver.manage.timeouts.implicit_wait = 30
それか、sleep するとか、
driver.navigate.to url
sleep 30
doc = Nokogiri::HTML( driver.page_source )
GAS は知らないけど、
Ruby, Selenium Webdriver, Nokogiri では、
要素の検索の timeout を長くするとか、
driver.manage.timeouts.implicit_wait = 30
それか、sleep するとか、
driver.navigate.to url
sleep 30
doc = Nokogiri::HTML( driver.page_source )
780デフォルトの名無しさん
2021/06/10(木) 08:31:00.19ID:rZOQ7XKm 機能の23時にはちゃんと動いていたスクリプトが、今朝試してみたらエラーが出てしまってる
function doPost(e) {
const getdata = JSON.parse(e.postData.getDataAsString());
//略
}
という関数を使ってるスクリプトがいくつかあるんだけど、全部
TypeError: e.postData.getDataAsString is not a function
というエラーが出るようになってしまった
同じ人いる?
function doPost(e) {
const getdata = JSON.parse(e.postData.getDataAsString());
//略
}
という関数を使ってるスクリプトがいくつかあるんだけど、全部
TypeError: e.postData.getDataAsString is not a function
というエラーが出るようになってしまった
同じ人いる?
782デフォルトの名無しさん
2021/06/11(金) 01:04:22.78ID:W2MDAmi/783デフォルトの名無しさん
2021/06/12(土) 21:54:06.58ID:yi8Rxd+W 見当はずれな質問も可能性高いんですが,
GASでうんこした時間をカレンダー登録するだけのスクリプト書いて,
ウェブアプリとしてデプロイしてAndroidのchromeのショートカット作って
それをデスクトップに保存して,そのアイコンをクリックすれば自分の
Googleカレンダーにうんこした時間登録できるとこまではできたんですが,
webショートカットなので当然chromeが起動してエラー画面が表示されちゃう
これをクリックしたらwebページも出さずに処理させる方法ってあるんでしょうか?
GASでうんこした時間をカレンダー登録するだけのスクリプト書いて,
ウェブアプリとしてデプロイしてAndroidのchromeのショートカット作って
それをデスクトップに保存して,そのアイコンをクリックすれば自分の
Googleカレンダーにうんこした時間登録できるとこまではできたんですが,
webショートカットなので当然chromeが起動してエラー画面が表示されちゃう
これをクリックしたらwebページも出さずに処理させる方法ってあるんでしょうか?
784デフォルトの名無しさん
2021/06/13(日) 00:34:56.20ID:drIN04VN >>783
claspで実行すれば?
https://github.com/google/clasp
https://takuya-1st.hatenablog.jp/entry/2021/06/08/021238
Androidってのがスマホから実行するって意味ならゴメンだけど
claspで実行すれば?
https://github.com/google/clasp
https://takuya-1st.hatenablog.jp/entry/2021/06/08/021238
Androidってのがスマホから実行するって意味ならゴメンだけど
785デフォルトの名無しさん
2021/06/13(日) 00:57:33.48ID:TPT9gOWH >>784
ありがとうございます.
やっぱりそういう目的のものではないんですなあ……
スマホは常時持ち歩いているのでうんこするときに便所でワンクリックで
うんこした時刻を記録したいという目的なのでスマホから実行させたいんですよね
やっぱりアプリ作るしかないのかしら(´・ω・`)
ありがとうございます.
やっぱりそういう目的のものではないんですなあ……
スマホは常時持ち歩いているのでうんこするときに便所でワンクリックで
うんこした時刻を記録したいという目的なのでスマホから実行させたいんですよね
やっぱりアプリ作るしかないのかしら(´・ω・`)
786デフォルトの名無しさん
2021/06/13(日) 19:42:39.72ID:lkc6O7cF >>785
TermuxのCUIからリクエスト送れないかね
TermuxのCUIからリクエスト送れないかね
787デフォルトの名無しさん
2021/06/13(日) 22:42:32.09ID:TPT9gOWH788デフォルトの名無しさん
2021/06/14(月) 01:54:11.31ID:btOps/6G >>787
bashで書いたのをctrl + rとかで呼び出せばいいんちゃう
bashで書いたのをctrl + rとかで呼び出せばいいんちゃう
789デフォルトの名無しさん
2021/06/14(月) 14:10:38.65ID:G+aGjkZp >>785
iPhoneだと↓みたいな感じでできるみたいだから
https://ntwmachine.com/shortcut-gas
Androidでも↓みたいなアプリでできそうじゃない?
HTTP Request Shortcuts
https://play.google.com/store/apps/details?id=ch.rmy.android.http_shortcuts
iPhoneだと↓みたいな感じでできるみたいだから
https://ntwmachine.com/shortcut-gas
Androidでも↓みたいなアプリでできそうじゃない?
HTTP Request Shortcuts
https://play.google.com/store/apps/details?id=ch.rmy.android.http_shortcuts
790デフォルトの名無しさん
2021/06/14(月) 17:48:55.22ID:WNlBtQy0 >>787
TaskerとTermux用Taskerプラグイン買えばショートカットとか色々なトリガーでコマンド実行できる
TaskerとTermux用Taskerプラグイン買えばショートカットとか色々なトリガーでコマンド実行できる
791デフォルトの名無しさん
2021/06/14(月) 21:57:18.79ID:m506649G >>783のやりたいこととやってみたことを100%理解してるわけじゃないけど、詳しくないなりに考えたのが、自分ならうんこした時間をカレンダーに記録するスクリプトと連携したスプレッドシートがあったとして、IFTTTでボタンウィジェットを押したらそのスプレッドシートに何でもいいから行が追加されるようにして、うんこ記録関数のトリガーはスプレッドシートが更新された時に発動するようにする
792デフォルトの名無しさん
2021/06/15(火) 16:38:21.05ID:0GdnjUqP >>783
キチンとhtml出力して、html内にウインドウ閉じるJavaScriptを入れるってのはダメですか?
キチンとhtml出力して、html内にウインドウ閉じるJavaScriptを入れるってのはダメですか?
793デフォルトの名無しさん
2021/06/15(火) 22:38:27.71ID:Pikc/bWs うわー皆さんいろいろアイディアありがとうございます.
>>792
試してみたんですがAndroid環境だと画面閉じないですね…
>>791
単純にうんこした時間をGoogleカレンダーに登録したいだけなんすよね…
なのでスプレッドシートとかは使いたくなくて,コードは
var date = new Date();
CalendarApp.getDefaultCalendar().createEvent("💩",date , date)
こんな感じで十分なので,できればこれをandroid上でアイコンに割り当てて一発実行したいのです.
>>788
ターミナル開く手間は避けたくて……
>>789
>>790
このどっちかででけそうな気がしてきたのでちょっと試してみます!
>>792
試してみたんですがAndroid環境だと画面閉じないですね…
>>791
単純にうんこした時間をGoogleカレンダーに登録したいだけなんすよね…
なのでスプレッドシートとかは使いたくなくて,コードは
var date = new Date();
CalendarApp.getDefaultCalendar().createEvent("💩",date , date)
こんな感じで十分なので,できればこれをandroid上でアイコンに割り当てて一発実行したいのです.
>>788
ターミナル開く手間は避けたくて……
>>789
>>790
このどっちかででけそうな気がしてきたのでちょっと試してみます!
794デフォルトの名無しさん
2021/06/15(火) 22:54:32.69ID:Jy0S46aa 絵文字かわヨ
795デフォルトの名無しさん
2021/07/13(火) 10:23:44.28ID:CjZmk7C6 共有しているスプレッドシートの
「編集者は権限を変更して共有できます」のチェックボックスを外す(無効にする)
ソースコードを教えてください
setShareableByEditors(shareable) を使えばできるようなのですが
使い方が分かりません
よろしくお願いいたしますm(_ _)m
「編集者は権限を変更して共有できます」のチェックボックスを外す(無効にする)
ソースコードを教えてください
setShareableByEditors(shareable) を使えばできるようなのですが
使い方が分かりません
よろしくお願いいたしますm(_ _)m
796デフォルトの名無しさん
2021/07/13(火) 10:54:14.06ID:Vr6vzxIM >>795
その関数の引数をfalseにするだけやろ
その関数の引数をfalseにするだけやろ
797デフォルトの名無しさん
2021/07/14(水) 18:54:15.93ID:GFXnTS4Q グループ内で簡易なうpろだとして使いたいのですが、ファイルのアップロード、コメントが記入できて、
アップロード先のURLとコメントをスプレッドシートにリスト化してくにはどうしたらいいんでしょうか?
ファイルのアップロード、コメント記入してそれをスプレッドシートにリスト化、それぞれは出来たんですが組合わせると動作しません。
なにかサンプルになるようなページを教えていただけると助かります…
アップロード先のURLとコメントをスプレッドシートにリスト化してくにはどうしたらいいんでしょうか?
ファイルのアップロード、コメント記入してそれをスプレッドシートにリスト化、それぞれは出来たんですが組合わせると動作しません。
なにかサンプルになるようなページを教えていただけると助かります…
798デフォルトの名無しさん
2021/07/15(木) 15:20:59.29ID:ygp86UHP シートを作る
うpするGASを書く
アップロード先のURLとコメントをスプレッドシートにリスト化
>ファイルのアップロード、コメント記入してそれをスプレッドシートにリスト化、それぞれは出来たんですが
もっと具体的に
出来ればソースとか晒すべき
うpするGASを書く
アップロード先のURLとコメントをスプレッドシートにリスト化
>ファイルのアップロード、コメント記入してそれをスプレッドシートにリスト化、それぞれは出来たんですが
もっと具体的に
出来ればソースとか晒すべき
799デフォルトの名無しさん
2021/07/15(木) 21:16:55.83ID:gFOIdhYR800デフォルトの名無しさん
2021/07/18(日) 21:16:48.01ID:hteKw5EV スプレッドシートのトリガー
onSelectionChangeの挙動ホント悪すぎる
ここらへんVBAと比べてダメ過ぎだな
onSelectionChangeの挙動ホント悪すぎる
ここらへんVBAと比べてダメ過ぎだな
801デフォルトの名無しさん
2021/07/29(木) 06:32:21.24ID:RJZsh/tv スプレッドシートのグラフもひどいよ。
setOption(‘vAxes.1.title’,’hoge’)とかも
setOption(‘vAxes.1.title’,’hoge’)とかも
802デフォルトの名無しさん
2021/08/01(日) 21:02:43.56ID:zu2woDem スプレッドシートとhtmlserviceで簡単なwebアプリ作ろうと思ったのですが、ユーザー毎のデータも扱う場合、どうやるのがいいんでしょうか。
アプリの実行者を「ログインしているユーザー」にすると、スプレッドシートへのアクセス件が必要だから、他の人のデータにアクセスされそうで怖い。
だからといって、実行者を「自分」(開発者)にすると、操作してるユーザーが誰なのかを判別できないし・・。
アプリの実行者を「ログインしているユーザー」にすると、スプレッドシートへのアクセス件が必要だから、他の人のデータにアクセスされそうで怖い。
だからといって、実行者を「自分」(開発者)にすると、操作してるユーザーが誰なのかを判別できないし・・。
803デフォルトの名無しさん
2021/08/05(木) 11:42:49.43ID:eMHroxtV804デフォルトの名無しさん
2021/08/08(日) 03:08:43.28ID:JLttzwiP >>803
user | name | score
aaa@gmail.com | taro | 85
bbb@gmail.com | jiro | 75
みたいにスプレッドシートをDBとして使うWEBアプリの場合、
アプリを「自分(開発者)」として実行すると、ログインユーザーのemailが取得できないから、スプレッドシートから当該ユーザーのデータを取得できない
「アクセスしているユーザー」として実行すれば、ログインユーザーのemailが取得できるけど、このスプレッドシートへのアクセス権を与えないといけないので、他のユーザーの情報も全て見れてしまう
ので、普通はどうするものなのかが知りたいです。(有償のworkspaceは使わない前提です)
user | name | score
aaa@gmail.com | taro | 85
bbb@gmail.com | jiro | 75
みたいにスプレッドシートをDBとして使うWEBアプリの場合、
アプリを「自分(開発者)」として実行すると、ログインユーザーのemailが取得できないから、スプレッドシートから当該ユーザーのデータを取得できない
「アクセスしているユーザー」として実行すれば、ログインユーザーのemailが取得できるけど、このスプレッドシートへのアクセス権を与えないといけないので、他のユーザーの情報も全て見れてしまう
ので、普通はどうするものなのかが知りたいです。(有償のworkspaceは使わない前提です)
805デフォルトの名無しさん
2021/08/10(火) 05:15:26.61ID:MjVqGGgl806デフォルトの名無しさん
2021/08/10(火) 11:13:59.22ID:9wi/dlAk GAS には、ユーザー認証機能があるの?
認証は、Firebase Authentication じゃないの?
認証は、Firebase Authentication じゃないの?
807デフォルトの名無しさん
2021/08/19(木) 04:51:29.28ID:l+iKsjPF const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
const pivotSheet = spreadsheet.getSheetByName('a');
const pivotTables = pivotSheet.getPivotTables();
pivotTables.forEach(pivotTable => {
const pivotValues = pivotTable.getPivotValues();
pivotValues.forEach(pivotValue => Logger.log(pivotValue));
});
こんなかんじでpivotTablから値をとりたいのですが、ログとしては
pivotValueという値しか返ってこないのですが、なんででしょうか?
pivotValue.getValue() のようなことがしたいんです。具体的な数値が返ってくるような。
const pivotSheet = spreadsheet.getSheetByName('a');
const pivotTables = pivotSheet.getPivotTables();
pivotTables.forEach(pivotTable => {
const pivotValues = pivotTable.getPivotValues();
pivotValues.forEach(pivotValue => Logger.log(pivotValue));
});
こんなかんじでpivotTablから値をとりたいのですが、ログとしては
pivotValueという値しか返ってこないのですが、なんででしょうか?
pivotValue.getValue() のようなことがしたいんです。具体的な数値が返ってくるような。
808デフォルトの名無しさん
2021/08/19(木) 08:07:07.49ID:hKprbQAC809デフォルトの名無しさん
2021/08/19(木) 12:03:47.46ID:l+iKsjPF >>808
getValue()は使えないみたいなんですよね、not a functionになって
getValueでしてみたらnullが帰ってきて謎...
ぐぐってもサンプルが出てこなくてまいりましたわ
getValue()は使えないみたいなんですよね、not a functionになって
getValueでしてみたらnullが帰ってきて謎...
ぐぐってもサンプルが出てこなくてまいりましたわ
810デフォルトの名無しさん
2021/08/19(木) 13:20:16.21ID:JpyvyW0f 公式のリファレンス読みなさい
811デフォルトの名無しさん
2021/10/13(水) 00:47:48.09ID:Qk99MJFD812デフォルトの名無しさん
2021/10/13(水) 01:39:22.36ID:sH5qc9+o >>811
何言ってだ
何言ってだ
813デフォルトの名無しさん
2021/10/17(日) 20:46:12.87ID:Nd7q+jNJ ピボットテーブルで出力したテーブルの特定の文字列のセルを非表示にしたいのですが
やり方が御座いましたらご教示お願いいたします
条件付き書式で一致すれば文字を白にするといった「見えなくする」ではなく
セルをコピーしてもコピーされない状態にしたいです
よろしくお願いいたします
やり方が御座いましたらご教示お願いいたします
条件付き書式で一致すれば文字を白にするといった「見えなくする」ではなく
セルをコピーしてもコピーされない状態にしたいです
よろしくお願いいたします
814デフォルトの名無しさん
2021/11/01(月) 23:15:46.54ID:Q50KTbzj 公式見てもわからなかったんですが、
新しいスプレッドシートを作る関数→できる
そのスプレッドシートに何か書き込む関数→できる
そのスプレッドシートのスクリプトエディタをいじってスクリプトを付ける関数→?
できるんでしょうか?
新しいスプレッドシートを作る関数→できる
そのスプレッドシートに何か書き込む関数→できる
そのスプレッドシートのスクリプトエディタをいじってスクリプトを付ける関数→?
できるんでしょうか?
815デフォルトの名無しさん
2021/12/02(木) 21:38:11.37ID:FXlnpm0p816デフォルトの名無しさん
2021/12/18(土) 23:17:06.97ID:a3T2SFZh はじめまして。
質問ですが、GoogleスプレッドシートのGAS(Google Apps Script)で、
「計算結果のみ」を別のスプレッドシートへコピーする方法を教えてください。
var ss_copyFrom = SpreadsheetApp.openById('コピー元のシートID');
var ss_copyTo = SpreadsheetApp.getActiveSpreadsheet();
var sheet_copyFrom = ss_copyFrom.getSheetByName('シート名');
var sheet_copyTo = ss_copyTo.getSheetByName('別のスプレッドシートのシート名');
var copyValue = sheet_copyFrom.getRange('W3:W200').getValues();
sheet_copyTo.getRange('B4:B201').setValues(copyValue);
上記でコピーそのものはできていますが、表示されるのが
コピー元であるスプレッドシートに入力されている「=T4-U4-V4」の結果
(コピー先のT列、U列、V列には何も入っていないため、「1899/12/30」が表示されています)で、
本当に表示させたいのはコピー元のスプレッドシートで「=T4-U4-V4」が計算された結果の数値「1」なのです。
GASについてはド素人(今月から使い始めました)で、ネット検索で色々調べてみましたが、
これといった解決策がわからず、困り果てています。
何とかお知恵を貸していただけますよう、お願い致します。
質問ですが、GoogleスプレッドシートのGAS(Google Apps Script)で、
「計算結果のみ」を別のスプレッドシートへコピーする方法を教えてください。
var ss_copyFrom = SpreadsheetApp.openById('コピー元のシートID');
var ss_copyTo = SpreadsheetApp.getActiveSpreadsheet();
var sheet_copyFrom = ss_copyFrom.getSheetByName('シート名');
var sheet_copyTo = ss_copyTo.getSheetByName('別のスプレッドシートのシート名');
var copyValue = sheet_copyFrom.getRange('W3:W200').getValues();
sheet_copyTo.getRange('B4:B201').setValues(copyValue);
上記でコピーそのものはできていますが、表示されるのが
コピー元であるスプレッドシートに入力されている「=T4-U4-V4」の結果
(コピー先のT列、U列、V列には何も入っていないため、「1899/12/30」が表示されています)で、
本当に表示させたいのはコピー元のスプレッドシートで「=T4-U4-V4」が計算された結果の数値「1」なのです。
GASについてはド素人(今月から使い始めました)で、ネット検索で色々調べてみましたが、
これといった解決策がわからず、困り果てています。
何とかお知恵を貸していただけますよう、お願い致します。
817デフォルトの名無しさん
2021/12/19(日) 02:11:05.33ID:TUb0vitt >>816
単純にスプレッドシートの表示形式が数値か日付かって話じゃないの
単純にスプレッドシートの表示形式が数値か日付かって話じゃないの
818デフォルトの名無しさん
2021/12/19(日) 11:32:13.88ID:RkNKFft4819デフォルトの名無しさん
2021/12/20(月) 12:14:27.96ID:ViJtvVZ6 スプレッドシートのメニューバー変わりましたよね?
拡張機能からスクリプト画面選ぶようになってる…
調べたら10月から順次変わってる…?今日気付いたんですが2ヶ月掛かって更新されたってことでしょうか?
拡張機能からスクリプト画面選ぶようになってる…
調べたら10月から順次変わってる…?今日気付いたんですが2ヶ月掛かって更新されたってことでしょうか?
820デフォルトの名無しさん
2021/12/20(月) 14:36:16.49ID:Xy/RGdSX うちのは10月末に変わってたよ。
821デフォルトの名無しさん
2022/01/15(土) 18:08:24.36ID:OIci5frO web版のエディタが使いにくい。
ファイル+のとこのペイン?っていうの?あれが邪魔で小さくしたくてデベロッパーコンソールでイジってるんだけどどのcss変えれば小さくできますか?
ファイル+のとこのペイン?っていうの?あれが邪魔で小さくしたくてデベロッパーコンソールでイジってるんだけどどのcss変えれば小さくできますか?
822デフォルトの名無しさん
2022/01/17(月) 18:17:08.30ID:ymAJekA/ スライドからスクリプト開いてスクルプト書きました。
スライドからそのスクリプト実行したくて、onOpen()でスライド表示時の右サイドバーにスジュリプト起動ボタンを表示するようにしました。
ところが、スライド開いた時にこのonOpenが実行っされません。
トリガーに登録せよ!という情報もあったのですが、トリガー登録画面には、「スライドを開いた時」的なものは無く、
「カレンダーを開いた時」のようなものしかありませんでした。
スライドを開いた時に、スクリプト起動させるボタンのようなものを表示して、そこからスクチプトを起動したいです。
方法があれば教えてください。
スライドからそのスクリプト実行したくて、onOpen()でスライド表示時の右サイドバーにスジュリプト起動ボタンを表示するようにしました。
ところが、スライド開いた時にこのonOpenが実行っされません。
トリガーに登録せよ!という情報もあったのですが、トリガー登録画面には、「スライドを開いた時」的なものは無く、
「カレンダーを開いた時」のようなものしかありませんでした。
スライドを開いた時に、スクリプト起動させるボタンのようなものを表示して、そこからスクチプトを起動したいです。
方法があれば教えてください。
823822
2022/01/18(火) 10:50:27.27ID:Y4BAPieC 解決しました。下記に載ってました。
Https://myfunc.jp/items/00015/index.html
Https://myfunc.jp/items/00015/index.html
824デフォルトの名無しさん
2022/02/20(日) 03:04:59.59ID:kcCfXnh0 指定した文字列Aと背景色の2条件で集計したいのですが、書き方を教えて下さい。
文字列Aだけ、背景色だけ、などはいくつか見つけられたのですが、組み合わせ方が分かりません…。
文字列Aだけ、背景色だけ、などはいくつか見つけられたのですが、組み合わせ方が分かりません…。
825デフォルトの名無しさん
2022/02/21(月) 21:47:26.46ID:UKJTHoUK https://script.google.com/
このページって何処からたどり着くんですか?
googleドライブとかから新規にスクリプトを作成するのは出来るんですけど
何処にも上記のリンクが無いです
このページって何処からたどり着くんですか?
googleドライブとかから新規にスクリプトを作成するのは出来るんですけど
何処にも上記のリンクが無いです
826デフォルトの名無しさん
2022/02/28(月) 14:47:01.29ID:QEzJwIFm 出来そうで出来ないというか検索してもやりかたが見つからなかったので
知ってたら助けて欲しい
【やりたいこと】
エクセルファイルをGASでスプレッドシートに変換してスプレッドシートにする
但しエクセルファイルの各シートのセルにはエクセル特有の文法で記載された計算式や関数がふんだんに使われているものとする
【ひっかかっていること】
単純にGASでDriveAppやDrive.Filesを用いてエクセルファイルをスプレッドシートに変換するだけだと
変換されたスプレッドシートのセルにはエクセルの特有の文法で記載された計算式や関数が移植されてきただけで
スプレッドシートではエクセル特有の文法で記載された計算式や関数は処理できないのでやりたいことが出来ない状態
なのでエクセルのセルに埋め込まれてる計算式で求められた計算値だけをスプレッドシートに移植したい
知ってたら助けて欲しい
【やりたいこと】
エクセルファイルをGASでスプレッドシートに変換してスプレッドシートにする
但しエクセルファイルの各シートのセルにはエクセル特有の文法で記載された計算式や関数がふんだんに使われているものとする
【ひっかかっていること】
単純にGASでDriveAppやDrive.Filesを用いてエクセルファイルをスプレッドシートに変換するだけだと
変換されたスプレッドシートのセルにはエクセルの特有の文法で記載された計算式や関数が移植されてきただけで
スプレッドシートではエクセル特有の文法で記載された計算式や関数は処理できないのでやりたいことが出来ない状態
なのでエクセルのセルに埋め込まれてる計算式で求められた計算値だけをスプレッドシートに移植したい
827デフォルトの名無しさん
2022/02/28(月) 20:31:28.47ID:PjfLudyf 関数で計算されてるデータを全て数値などに置き換えた物をアップすれば簡単じゃね?
データとして貼り付ければ一瞬だしマクロ組めるでしょ。
データとして貼り付ければ一瞬だしマクロ組めるでしょ。
828デフォルトの名無しさん
2022/03/01(火) 18:33:50.02ID:VTA82jsu そのエクセルが他から提出されてくるもので数百単位であるので
個々にそのマクロを仕込んだものを実行するというのは大変かなぁ
できればエクセルはそのままで一括で読み込んで
GASのなかでやっちゃいたい
無理げかなぁ
個々にそのマクロを仕込んだものを実行するというのは大変かなぁ
できればエクセルはそのままで一括で読み込んで
GASのなかでやっちゃいたい
無理げかなぁ
829デフォルトの名無しさん
2022/03/01(火) 18:59:33.32ID:CkaReruZ そういう後だしするからアドバイスするだけ無駄ってのが出てくるんだよね
830デフォルトの名無しさん
2022/03/02(水) 20:59:04.21ID:CHjRcKIO >>826
スプレッドシートでは処理できない、って言う時点でGASじゃ無理でしょ。
どうしてもやりたいなら、下記くらいしか思いつかない。
@その数式と同じ動きをする関数を自分でGASで実装する
AWinのタスクスケジューラとか使って、VBAでExcel文字列化するなりCSV出力するなりして、それをGASでスプレッドシート化する。GoogleドライブアプリでWinとドライブを同期する
スプレッドシートでは処理できない、って言う時点でGASじゃ無理でしょ。
どうしてもやりたいなら、下記くらいしか思いつかない。
@その数式と同じ動きをする関数を自分でGASで実装する
AWinのタスクスケジューラとか使って、VBAでExcel文字列化するなりCSV出力するなりして、それをGASでスプレッドシート化する。GoogleドライブアプリでWinとドライブを同期する
831デフォルトの名無しさん
2022/03/02(水) 21:59:04.64ID:vYgwEkZg しょうがないから一つヒント
同じフォルダ、若しくは特定のフォルダに入ってるExcelのファイルを全て文字に変換して保存するマクロを組めばOK
何百あろうが一瞬
全てのブックの全てのシートへループでぐるぐる回すだけだから、そんなに難しくないよ
同じフォルダ、若しくは特定のフォルダに入ってるExcelのファイルを全て文字に変換して保存するマクロを組めばOK
何百あろうが一瞬
全てのブックの全てのシートへループでぐるぐる回すだけだから、そんなに難しくないよ
832デフォルトの名無しさん
2022/03/11(金) 16:04:46.03ID:GfEhxdTj GASのソースコード内でタイムゾーンを変更することはできるのだろうか?
GASのエディタにあるjsonに書いて指定するというのは見つけたが、それだとコード内でgoogleドライブから開いたスプレッドシートには適用されなかった
GASのエディタではTokyoにしてても開いたスプレッドシートはPacificになってる
GASのエディタにあるjsonに書いて指定するというのは見つけたが、それだとコード内でgoogleドライブから開いたスプレッドシートには適用されなかった
GASのエディタではTokyoにしてても開いたスプレッドシートはPacificになってる
833デフォルトの名無しさん
2022/03/11(金) 21:23:44.78ID:gLuUS5Uy それはスプレッドシート自体の設定いじる
834デフォルトの名無しさん
2022/03/11(金) 21:27:52.87ID:gLuUS5Uy もしくはGoogleアカウント設定のプロフィールのタイムゾーンいじると
それ以降作成したスプレッドシートはデフォルト変わってるはず
それ以降作成したスプレッドシートはデフォルト変わってるはず
835デフォルトの名無しさん
2022/03/11(金) 21:31:24.19ID:0mAcmeni >>834
デマ回答やめろ😡
デマ回答やめろ😡
836デフォルトの名無しさん
2022/03/16(水) 10:48:26.08ID:JIpzCEZ0 スプレッドシートの複数列を指定して二次元配列に入れる場合のやりかたはわかるんだけど
離れた二つの列を指定することって出来る?
range = Sheet.getRange("D2:E1000");
array1 =range.getValues();
Logger.log(array1);
例えばこれだとD列2行目からE列1000行目までの2列分のデータを二次元配列に格納されるけど
これをD列2行目からD列1000行目とN列2行目からN列1000行目のデータを二次元配列に入れたい
D列とE列は隣り合ってるけど
D列とN列は隣り合ってないからうまく実現できない
離れた二つの列を指定することって出来る?
range = Sheet.getRange("D2:E1000");
array1 =range.getValues();
Logger.log(array1);
例えばこれだとD列2行目からE列1000行目までの2列分のデータを二次元配列に格納されるけど
これをD列2行目からD列1000行目とN列2行目からN列1000行目のデータを二次元配列に入れたい
D列とE列は隣り合ってるけど
D列とN列は隣り合ってないからうまく実現できない
837デフォルトの名無しさん
2022/03/16(水) 11:31:39.30ID:y8PMgdeo Rangeも配列で指定すればいいんじゃね
838デフォルトの名無しさん
2022/03/28(月) 04:13:33.54ID:XbT1Q7Sk const files1 = DriveApp.getFolderById(folderId1).getFiles();
const files2 = DriveApp.getFolderById(folderId2).getFiles();
こんな感じで異なるフォルダに格納されてるファイルをgetFiles取得した場合
その結果のfiles1とfiles2を合体させてfiles3にするようなことってできる?
いまだとファイルの数だけ繰り返すっていうのでfiles1を回すループ処理とfiles2を回すループ処理という感じで見栄えが悪いから
2つをマージしたfiles3を回すループ処理って感じにしたい
const files2 = DriveApp.getFolderById(folderId2).getFiles();
こんな感じで異なるフォルダに格納されてるファイルをgetFiles取得した場合
その結果のfiles1とfiles2を合体させてfiles3にするようなことってできる?
いまだとファイルの数だけ繰り返すっていうのでfiles1を回すループ処理とfiles2を回すループ処理という感じで見栄えが悪いから
2つをマージしたfiles3を回すループ処理って感じにしたい
839デフォルトの名無しさん
2022/03/28(月) 09:02:53.32ID:/mas85k3 無理なのでループ処理部分をメソッド化するなりしてどうぞ
840デフォルトの名無しさん
2022/03/28(月) 11:53:32.50ID:XbT1Q7Sk えぇ〜…
残念
残念
841デフォルトの名無しさん
2022/03/31(木) 12:20:31.27ID:A0O2N5qb GASでセルの値を変更させて変更後の値を読み取ってって一連の処理をしたいんだけど
一連の処理が終わるまでシートに表示される値がリフレッシュされないらしく
処理としてはセルへ値を出力してるけど読み取る値が出力前の値になってる
強制的にシートに表示される値を最新にすることってできないの?
一連の処理が終わるまでシートに表示される値がリフレッシュされないらしく
処理としてはセルへ値を出力してるけど読み取る値が出力前の値になってる
強制的にシートに表示される値を最新にすることってできないの?
842デフォルトの名無しさん
2022/03/31(木) 13:19:55.86ID:5pPwE+XM コードを貼れ
843デフォルトの名無しさん
2022/04/01(金) 06:42:07.95ID:68FipywF setvalueで値をセルに入れるのってリアルタイム反映じゃなくて
スタックしてて処理が終わるみたいな切りがいいところで
まとめて反映する仕様じゃないのけ?
クラウドベースの実行だからサーバー側の負荷軽減のためだと聞いたが
コード云々でなんとかなるなら知りたい
スタックしてて処理が終わるみたいな切りがいいところで
まとめて反映する仕様じゃないのけ?
クラウドベースの実行だからサーバー側の負荷軽減のためだと聞いたが
コード云々でなんとかなるなら知りたい
844デフォルトの名無しさん
2022/04/08(金) 13:56:00.62ID:PYg//+II getValues()で取得したのはrangeで指定したのが1列分のデータであっても2次元配列になっちゃうけれど
getValues()の後ろに続けて.flat().filter(String).map(String) と付ければ1次元配列に変換できることを
ネット上で検索してたら見つけた
range = sheet.getRange("C2:C1000");
result = range.getValues().flat().filter(String).map(String);
実際に上記のようなコードで試したところ確かに1次元配列に変換はされてるけど
空白セルの要素が配列から消滅してしまってる
"A","B","","F","D"
上記のように要素数5個で3番目の要素が空欄の配列が欲しいのだが
"A","B","F","D"
上記のように空欄の要素が消滅して前詰めされた要素数4個になってしまってる
空白セルの要素も残したいんだけど、どうやったらいいのだろうか?
getValues()の後ろに続けて.flat().filter(String).map(String) と付ければ1次元配列に変換できることを
ネット上で検索してたら見つけた
range = sheet.getRange("C2:C1000");
result = range.getValues().flat().filter(String).map(String);
実際に上記のようなコードで試したところ確かに1次元配列に変換はされてるけど
空白セルの要素が配列から消滅してしまってる
"A","B","","F","D"
上記のように要素数5個で3番目の要素が空欄の配列が欲しいのだが
"A","B","F","D"
上記のように空欄の要素が消滅して前詰めされた要素数4個になってしまってる
空白セルの要素も残したいんだけど、どうやったらいいのだろうか?
845デフォルトの名無しさん
2022/04/08(金) 18:27:03.86ID:tiBN51P7 >>844
filter()とmap()要らなくない?
filter()とmap()要らなくない?
846デフォルトの名無しさん
2022/04/08(金) 20:09:46.76ID:PYg//+II >>845
そうなのかな
ここの記事を読んだんだけど
https://iwb.jp/google-apps-script-getvalues-two-dimensional-array-concat/
そうなのかな
ここの記事を読んだんだけど
https://iwb.jp/google-apps-script-getvalues-two-dimensional-array-concat/
847デフォルトの名無しさん
2022/04/08(金) 20:12:32.05ID:PYg//+II result = range.getValues().flat()
とりあえず .filter以下を消したら望んでた結果は得られた模様
とりあえず .filter以下を消したら望んでた結果は得られた模様
848デフォルトの名無しさん
2022/04/08(金) 20:16:40.07ID:tiBN51P7 >>846
この記事は空白除去してるじゃん
この記事は空白除去してるじゃん
849デフォルトの名無しさん
2022/04/08(金) 20:28:36.27ID:uSpd3hvB セルに手入力された5:22とか8:24とかの見た目時間になってる単なる文字列を使って
時間の足し算をしたいんだが、なんかいいアイディアはないだろうか?
時間の足し算をしたいんだが、なんかいいアイディアはないだろうか?
850デフォルトの名無しさん
2022/04/08(金) 20:30:57.57ID:TDBa7GsZ 足し算自体はスプレッドシート上の計算式ではなく
値だけ変数に入れてhas上でやりたい
値だけ変数に入れてhas上でやりたい
851デフォルトの名無しさん
2022/04/14(木) 12:07:06.46ID:l9jSNk17 スプレッドシートに数十個のボタンを図形描画してスクリプトの割り当てをしたんだが何回設定しても
いつのまにかスクリプトの割り当てで割り当てたスクリプトが空欄に戻ってしまう
これって何か制限があったりするのだろうか
一通り設定して最初のボタンから確認していくと空欄に戻ってしまってて
ボタン押しても反応しない
設定した直後にボタン押すときはスクリプトが動いてるから最初から設定できてないわけではない
いつのまにかスクリプトの割り当てで割り当てたスクリプトが空欄に戻ってしまう
これって何か制限があったりするのだろうか
一通り設定して最初のボタンから確認していくと空欄に戻ってしまってて
ボタン押しても反応しない
設定した直後にボタン押すときはスクリプトが動いてるから最初から設定できてないわけではない
852デフォルトの名無しさん
2022/05/24(火) 07:38:06.26ID:78erdOqF ClassroomAPIを使って
-----
Classroom.Courses.CourseWork.list(クラスルームのID).courseWork.forEach(w =>{
〜〜〜〜〜〜
})
-----
ってかんじで受講しているクラスで出された課題それぞれに対して処理をしているんだけど、
これだと提出済み課題に対しても処理してしまう。
提出済みか判定して、除外するためにはどうしたらいい?
-----
Classroom.Courses.CourseWork.list(クラスルームのID).courseWork.forEach(w =>{
〜〜〜〜〜〜
})
-----
ってかんじで受講しているクラスで出された課題それぞれに対して処理をしているんだけど、
これだと提出済み課題に対しても処理してしまう。
提出済みか判定して、除外するためにはどうしたらいい?
853デフォルトの名無しさん
2022/05/27(金) 11:50:40.73ID:S0cy91Tb 提出済みか判定して、除外す提出済みか判定して、除外すればいい
854デフォルトの名無しさん
2022/05/28(土) 11:07:36.06ID:81XaDMLN FastAPI
OCID
OCID
855デフォルトの名無しさん
2022/05/30(月) 11:13:52.52ID:Z6OL71NL Google Apps Web API
https://www.youtube.com/watch?v=i80Dy6PwWqE
https://www.youtube.com/watch?v=i80Dy6PwWqE
856デフォルトの名無しさん
2022/07/22(金) 09:02:24.10ID:CcjlX4kF 質問します
ローカルにあるファイルをメールに添付して
指定時間に送信するみたいなことを
gasでやりたいのですが、
ローカルファイルをGoogleドライブに取り込むところから躓いてます
こういうやり方があるよ、とかこのHPが参考になる、みたいなのはありますか?
ローカルにあるファイルをメールに添付して
指定時間に送信するみたいなことを
gasでやりたいのですが、
ローカルファイルをGoogleドライブに取り込むところから躓いてます
こういうやり方があるよ、とかこのHPが参考になる、みたいなのはありますか?
857sage
2022/07/28(木) 15:18:39.59ID:5gdZfTov m5stackでボタンを押す → スプレッドシートに書き込み → 編集をgmailで送信
というのをしたいなと。
参考にしたのはこのページ
https://knt60345blog.com/m5stack-googlespreadsheet/
要はボタンを押すとスマホに通知がくるシステムを作りたいのです。ところがgmailの送信がされません。
やったこと
1.スプレッドシートに編集があったときに通知する
→ 手入力だと通知される。しかし、scriptによる編集では通知されない。
2.gas上で編集をトリガーにしてsendgmailを使う
→失敗。おそらく1と同じ理由
3.スプレッドシートを編集するスクリプトの中にsendgmailを記述する
→編集はされるがメールは送信されない
sendmailの使い方を間違えているのかと思いましたがメールを送るだけのコードを実行するときちんと送れていました。
ヒントをもらえるとありがたいです。よろしくお願いします。
というのをしたいなと。
参考にしたのはこのページ
https://knt60345blog.com/m5stack-googlespreadsheet/
要はボタンを押すとスマホに通知がくるシステムを作りたいのです。ところがgmailの送信がされません。
やったこと
1.スプレッドシートに編集があったときに通知する
→ 手入力だと通知される。しかし、scriptによる編集では通知されない。
2.gas上で編集をトリガーにしてsendgmailを使う
→失敗。おそらく1と同じ理由
3.スプレッドシートを編集するスクリプトの中にsendgmailを記述する
→編集はされるがメールは送信されない
sendmailの使い方を間違えているのかと思いましたがメールを送るだけのコードを実行するときちんと送れていました。
ヒントをもらえるとありがたいです。よろしくお願いします。
858デフォルトの名無しさん
2022/08/03(水) 00:57:44.35ID:Mtys3/qj >>856
簡単なのはGoogle DriveアプリでPCと同期させる方法かと思います。
簡単なのはGoogle DriveアプリでPCと同期させる方法かと思います。
859デフォルトの名無しさん
2022/08/03(水) 15:39:22.24ID:IS1ZoKH3 >>856
ローカルファイルと言うことはトリガー実行じゃないんだよね?
どういう操作を想定してるのかわからんけど、HTMLでダイアログ表示させるかdoGetでHTMLを表示させて
そのHTMLとJSでローカルファイルは読めるよ
https://tonari-it.com/gas-dialog-basic/
>>857
これで普通に出来たぞ
function doPost() {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('シート1');
var range = sheet.getRange('A1');
var values = range.setValue('hoge');
GmailApp.sendEmail('test@example.com', 'subject', 'body');
}
ローカルファイルと言うことはトリガー実行じゃないんだよね?
どういう操作を想定してるのかわからんけど、HTMLでダイアログ表示させるかdoGetでHTMLを表示させて
そのHTMLとJSでローカルファイルは読めるよ
https://tonari-it.com/gas-dialog-basic/
>>857
これで普通に出来たぞ
function doPost() {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('シート1');
var range = sheet.getRange('A1');
var values = range.setValue('hoge');
GmailApp.sendEmail('test@example.com', 'subject', 'body');
}
860デフォルトの名無しさん
2022/08/04(木) 08:31:05.67ID:CP8sLsBT >>858-859
回答ありがとうございます
もう回答もらえないのかな?と諦めておりました
実はローカルファイルをトリガー実行(時間指定)でメールに添付させたいというのが希望する処理なのです
グーグルドライブアプリからならキーも取れそうですね
会社からグーグルドライブアプリの設置許可貰えたらやってみます
回答ありがとうございます
もう回答もらえないのかな?と諦めておりました
実はローカルファイルをトリガー実行(時間指定)でメールに添付させたいというのが希望する処理なのです
グーグルドライブアプリからならキーも取れそうですね
会社からグーグルドライブアプリの設置許可貰えたらやってみます
861デフォルトの名無しさん
2022/08/26(金) 19:09:52.12ID:fCaJRqVr 祝
有料化
有料化
862デフォルトの名無しさん
2022/08/26(金) 20:13:08.31ID:shwkM977863デフォルトの名無しさん
2022/08/31(水) 11:27:16.40ID:8zP5mkRm googleSpaceのタスクにGASでタスク登録って可能?
登録しようとしても
GoogleJsonResponseException: API call to tasks.tasks.insert failed with error: Invalid task list ID
って吐かれる
IDはスペースのURL末尾を使ってる
登録しようとしても
GoogleJsonResponseException: API call to tasks.tasks.insert failed with error: Invalid task list ID
って吐かれる
IDはスペースのURL末尾を使ってる
864デフォルトの名無しさん
2022/09/15(木) 22:22:03.06ID:ZhCJ57CK しばらく触ってないうちにスクリプトエディタが変わっていたんですが、新しいエディタでプロジェクトのコピーを保存したい場合ってどうしたら良いんでしょうか?
自作のスクリプトを使ってもらうのにコピーを保存してもらっていたので代わりの方法を探しています
自作のスクリプトを使ってもらうのにコピーを保存してもらっていたので代わりの方法を探しています
865デフォルトの名無しさん
2022/10/25(火) 20:43:00.01ID:czhOEshi Googleスプレッドシートの件で質問します。
A11からF11の列に、IMPORTRANGE()によって、他のスプレッドから取り込んだデータが入っています。行の数は未定(約300件ぐらい)です。
このままでは、元データのシートが更新されると、合わせてデータも更新されてしまいます。
この現在表示されているセルの値をそのまま、文字列としてセルに上書きするコードを記入したいのですが、どのように記述するとよいでしょうか?
A11からF11の列に、IMPORTRANGE()によって、他のスプレッドから取り込んだデータが入っています。行の数は未定(約300件ぐらい)です。
このままでは、元データのシートが更新されると、合わせてデータも更新されてしまいます。
この現在表示されているセルの値をそのまま、文字列としてセルに上書きするコードを記入したいのですが、どのように記述するとよいでしょうか?
866デフォルトの名無しさん
2022/10/26(水) 01:21:01.31ID:Dg1k8nd7 やりたいことがわからないのでもう少し詳しく書いてください
867865
2022/10/26(水) 02:36:10.71ID:wuQKMR4S すみません。自己解決しました。
スレ汚し申し訳ありませんでした。
スレ汚し申し訳ありませんでした。
868デフォルトの名無しさん
2022/10/26(水) 11:11:50.28ID:t4LQIfXs 謝るより原因や解決方法を書いていってほしい
質問と解決法が揃ってればスレ汚しにならない
質問と解決法が揃ってればスレ汚しにならない
869デフォルトの名無しさん
2022/11/19(土) 22:03:44.91ID:7xWc9dNP 初心者で勉強中ですがplain bodyとかの正規表現が難しくて泣きそう
870デフォルトの名無しさん
2022/12/16(金) 21:50:55.76ID:/69Su096 1日一回gmailの中のメールをフィルタリングして集計してメールを遅るスクリプトを動かしてます。
今日までは毎日1回動いてましたが
本日近い時間帯で4回トリガーされていました。
このようなことが起こった方他におられませんでしょうか。
今日までは毎日1回動いてましたが
本日近い時間帯で4回トリガーされていました。
このようなことが起こった方他におられませんでしょうか。
871デフォルトの名無しさん
2022/12/17(土) 09:05:35.61ID:CgXXVcB1 >>870
調べてみるのでソースだせる?
調べてみるのでソースだせる?
872デフォルトの名無しさん
2023/01/16(月) 23:18:09.81ID:XkS+UaR1 ボタンを押下したらテーブルを表示させたいんだけど、どうすればいいのでしょうか?
873デフォルトの名無しさん
2023/01/17(火) 00:42:43.29ID:fU/PH7pE 質問ざっくりしすぎ
874デフォルトの名無しさん
2023/01/18(水) 09:15:14.72ID:NRwxJvcS 毎月の商品ごとの売上グラフを作ってるんですけどAには赤、Bには青、Cには黃というように色指定は出来ますか?
グラフの並び順に1番目から赤、青、黃という順序では出来るんですけど、順番が変動しても大丈夫にしたいです
A2=
if "A", Red
"B", Blue
"C", Yellow
みたいに出来たらいいなと思ってます
グラフの並び順に1番目から赤、青、黃という順序では出来るんですけど、順番が変動しても大丈夫にしたいです
A2=
if "A", Red
"B", Blue
"C", Yellow
みたいに出来たらいいなと思ってます
875デフォルトの名無しさん
2023/01/20(金) 23:25:45.84ID:E/iTFMTm 二次配列の中の特定要素を一個だけじゃなくて任意の数があるか確認する方法ってある?
876デフォルトの名無しさん
2023/01/21(土) 01:05:54.74ID:tr5Udobt どういうこと?
何か日本語不得意なやつ多すぎね?
上手く質問できないなら具体例を書けよ
例えば
[
[1, 2, ...],
[3, 4, ...]
]
という二次元があったとき、
○○が○○であることを確認する方法ってある?
みたいな
何か日本語不得意なやつ多すぎね?
上手く質問できないなら具体例を書けよ
例えば
[
[1, 2, ...],
[3, 4, ...]
]
という二次元があったとき、
○○が○○であることを確認する方法ってある?
みたいな
877デフォルトの名無しさん
2023/01/21(土) 04:21:13.49ID:a0kfmYv3 日本語というかこういうのはちゃんと説明できないからコード書けないんでは
878デフォルトの名無しさん
2023/01/21(土) 16:40:27.15ID:/REhm/9K ボタンが押下されたら表が動的に表示されるようにしたいのですが、動的に作成された表の値がundefinedになります。
下記の通りに書いたのですが、何故undefinedになるのでしょうか?
<script>
function displayTable() {
var htmlTable = google.script.run.getTable_Area();
document.getElementById("createdTable").innerHTML = htmlTable;
}
</script>
function getTable_Area() {
return '<table>' +
'<thead>' +
'<tr>' +
'<th>Result</th>' +
'</tr>' +
'</thead>' +
'<tbody>' +
'<tr>' +
'<td>Date</td>' +
'<td><input value=<?= new Date();?>></input></td>' +
'</tr>' +
'<tr>' +
'<td>Area</td>' +
'<td><input value=<?= getArea();?>></input></td>' +
'</tr>' +
'</tbody>' +
'</table>';
}
下記の通りに書いたのですが、何故undefinedになるのでしょうか?
<script>
function displayTable() {
var htmlTable = google.script.run.getTable_Area();
document.getElementById("createdTable").innerHTML = htmlTable;
}
</script>
function getTable_Area() {
return '<table>' +
'<thead>' +
'<tr>' +
'<th>Result</th>' +
'</tr>' +
'</thead>' +
'<tbody>' +
'<tr>' +
'<td>Date</td>' +
'<td><input value=<?= new Date();?>></input></td>' +
'</tr>' +
'<tr>' +
'<td>Area</td>' +
'<td><input value=<?= getArea();?>></input></td>' +
'</tr>' +
'</tbody>' +
'</table>';
}
879デフォルトの名無しさん
2023/01/21(土) 20:12:40.75ID:tr5Udobt >>878
パッと見だけど
displayTableはフロント側の関数だよね
getTable_Areaはgoogle.script.run経由で呼び出してるからgs(バックエンド側)の関数だよね
google.script.runはwithSuccessHandlerのコールバックでレスポンス受け取るから、変数htmlTableはundefinedになるんじゃね?
パッと見だけど
displayTableはフロント側の関数だよね
getTable_Areaはgoogle.script.run経由で呼び出してるからgs(バックエンド側)の関数だよね
google.script.runはwithSuccessHandlerのコールバックでレスポンス受け取るから、変数htmlTableはundefinedになるんじゃね?
880デフォルトの名無しさん
2023/01/21(土) 21:05:36.17ID:EDO4fSiJ >>879
>displayTableはフロント側の関数だよね
>getTable_Areaはgoogle.script.run経由で呼び出してるからgs(バックエンド側)の関数だよね
はい。それぞれフロントとバックエンド側になります。
withSuccessHandlerを以下の通りに使用し、実行したところundefinedは表示されなくなったのですが、表が表示されないということはcalculateArea()の書き方がいけないのでしょうか?
<script>
function calculateArea() {
var htmlTable = "";
google.script.run.withSuccessHandler(function(data) {
htmlTable = data;
}).getTable_Area();
document.getElementById("createdTable").innerHTML = htmlTable;
}
</script>
>displayTableはフロント側の関数だよね
>getTable_Areaはgoogle.script.run経由で呼び出してるからgs(バックエンド側)の関数だよね
はい。それぞれフロントとバックエンド側になります。
withSuccessHandlerを以下の通りに使用し、実行したところundefinedは表示されなくなったのですが、表が表示されないということはcalculateArea()の書き方がいけないのでしょうか?
<script>
function calculateArea() {
var htmlTable = "";
google.script.run.withSuccessHandler(function(data) {
htmlTable = data;
}).getTable_Area();
document.getElementById("createdTable").innerHTML = htmlTable;
}
</script>
881デフォルトの名無しさん
2023/01/21(土) 21:11:08.81ID:tr5Udobt >>880
こうしてみて
function calculateArea() {
google.script.run.withSuccessHandler(function(data) {
document.getElementById("createdTable").innerHTML = data;
}).getTable_Area();
}
こうしてみて
function calculateArea() {
google.script.run.withSuccessHandler(function(data) {
document.getElementById("createdTable").innerHTML = data;
}).getTable_Area();
}
882デフォルトの名無しさん
2023/01/21(土) 22:20:43.38ID:EDO4fSiJ >>881
ありがとうございます!表が表示されるようになりました!
もし可能であれば、もう1点教えていただきたいのですが、
上記 function getTable_Area()には
'<td><input value=<?= getArea();?>></input></td>'
のようにgetArea()などの関数を表が作成される際に呼ばれるよにしています。
しかし、表示されたタブをみてみると
<input value="<?=" getarea();?="">
になっており、エスケープ処理?がされているみたいです。
実際にアプリを開発する際は、何か別の方法でinputの値に関数の戻り値を代入しているのでしょうか?
ありがとうございます!表が表示されるようになりました!
もし可能であれば、もう1点教えていただきたいのですが、
上記 function getTable_Area()には
'<td><input value=<?= getArea();?>></input></td>'
のようにgetArea()などの関数を表が作成される際に呼ばれるよにしています。
しかし、表示されたタブをみてみると
<input value="<?=" getarea();?="">
になっており、エスケープ処理?がされているみたいです。
実際にアプリを開発する際は、何か別の方法でinputの値に関数の戻り値を代入しているのでしょうか?
883デフォルトの名無しさん
2023/01/21(土) 22:36:15.48ID:tr5Udobt884デフォルトの名無しさん
2023/01/21(土) 22:50:23.61ID:EDO4fSiJ >>883
バック(gs)になります。
バック(gs)になります。
885デフォルトの名無しさん
2023/01/21(土) 22:59:56.13ID:tr5Udobt >>884
これで良くない?
function getTable_Area() {
const a = new Date();
const b = getArea();
return '<table>' +
'<thead>' +
'<tr>' +
'<th>Result</th>' +
'</tr>' +
'</thead>' +
'<tbody>' +
'<tr>' +
'<td>Date</td>' +
'<td><input value="' + a + '"></input></td>' +
'</tr>' +
'<tr>' +
'<td>Area</td>' +
'<td><input value="' + b + '"></input></td>' +
'</tr>' +
'</tbody>' +
'</table>';
}
これで良くない?
function getTable_Area() {
const a = new Date();
const b = getArea();
return '<table>' +
'<thead>' +
'<tr>' +
'<th>Result</th>' +
'</tr>' +
'</thead>' +
'<tbody>' +
'<tr>' +
'<td>Date</td>' +
'<td><input value="' + a + '"></input></td>' +
'</tr>' +
'<tr>' +
'<td>Area</td>' +
'<td><input value="' + b + '"></input></td>' +
'</tr>' +
'</tbody>' +
'</table>';
}
886デフォルトの名無しさん
2023/01/21(土) 23:07:30.06ID:EDO4fSiJ887デフォルトの名無しさん
2023/01/21(土) 23:20:48.89ID:tr5Udobt >>886
全く説明してなくてごめんね
テンプレートリテラル使うともっと簡潔に書ける
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Template_literals
あと同期/非同期がわかるといいね
全く説明してなくてごめんね
テンプレートリテラル使うともっと簡潔に書ける
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Template_literals
あと同期/非同期がわかるといいね
888デフォルトの名無しさん
2023/01/21(土) 23:41:09.53ID:EDO4fSiJ889デフォルトの名無しさん
2023/01/22(日) 09:05:30.28ID:1NpPY/pK ERB(埋め込み・Embedded RuBy)なら、HTML 内で、
<% 〜 %> でRubyのコード片を実行するだけ(出力はしない)。
<%= 〜 %> でRubyのコード片を実行して出力する
例えば、a.html.erb が以下なら、
<% ary = [ "<a>", "あ" ] %>
<% ary.each do |item| %>
<input type="text" value="<%= item %>">
<% end %>
a.html は、以下のように出力される
<input type="text" value="<a>">
<input type="text" value="あ">
<% 〜 %> でRubyのコード片を実行するだけ(出力はしない)。
<%= 〜 %> でRubyのコード片を実行して出力する
例えば、a.html.erb が以下なら、
<% ary = [ "<a>", "あ" ] %>
<% ary.each do |item| %>
<input type="text" value="<%= item %>">
<% end %>
a.html は、以下のように出力される
<input type="text" value="<a>">
<input type="text" value="あ">
890デフォルトの名無しさん
2023/01/25(水) 19:23:10.13ID:EJwoBEnK test
891デフォルトの名無しさん
2023/01/25(水) 19:23:43.80ID:EJwoBEnK やりたいこと:
Maps.newStaticMap()で作成した画像?をHTML上に表示させたい。
試したこと:
index.htmlから呼ばれるtest.gsの関数内で
var googleMap = Maps.newStaticMap().setCenter(centreY,centreX)
を定義して
return googleMap.getMapUrl();
でそのURLを取得しました。
そのURLをHTMLのIMGタグに
<img src="〇〇〇" width="100px" height="100px">
と入れても画像が表示されませんでした。
HTML上でbodタグの中に画像を表示させようとしているのですが、ファイルアイコンが半分に敗れたものが表示されています。
Maps.newStaticMap()で作成した画像?をHTML上に表示させたい。
試したこと:
index.htmlから呼ばれるtest.gsの関数内で
var googleMap = Maps.newStaticMap().setCenter(centreY,centreX)
を定義して
return googleMap.getMapUrl();
でそのURLを取得しました。
そのURLをHTMLのIMGタグに
<img src="〇〇〇" width="100px" height="100px">
と入れても画像が表示されませんでした。
HTML上でbodタグの中に画像を表示させようとしているのですが、ファイルアイコンが半分に敗れたものが表示されています。
892デフォルトの名無しさん
2023/01/26(木) 03:32:17.94ID:n/mKepPR >>891
getUrlで取得されたURLにあるものって画像じゃないよね
画像じゃないものをimgタグにセットしても表示されないよ
URLにあるものを画像化するか
iframe使って表示させるか(未検証)
どっちかのアプローチじゃないかな
getUrlで取得されたURLにあるものって画像じゃないよね
画像じゃないものをimgタグにセットしても表示されないよ
URLにあるものを画像化するか
iframe使って表示させるか(未検証)
どっちかのアプローチじゃないかな
893デフォルトの名無しさん
2023/01/26(木) 04:58:55.72ID:p3aeborJ894デフォルトの名無しさん
2023/02/02(木) 21:14:34.93ID:d3AVgBUi GAS愛好家のみなさん
ContactsAppからPeopleAPIへの移行状況はいかがですか?
勝手が違いすぎてよーわからん
公式すらあんまり情報ないしマトモな記事載せてるサイトもないですよね
ContactsAppからPeopleAPIへの移行状況はいかがですか?
勝手が違いすぎてよーわからん
公式すらあんまり情報ないしマトモな記事載せてるサイトもないですよね
895デフォルトの名無しさん
2023/02/03(金) 12:45:44.80ID:0b57qUmd スプレッドシートについての質問をさせてください
条件付き書式で、フォントサイズを変更するにはどうしたらいいでしょうか
表で一定の値の数字以上はフォントサイズが大きくなる、という仕様にしたいです
条件付き書式で、フォントサイズを変更するにはどうしたらいいでしょうか
表で一定の値の数字以上はフォントサイズが大きくなる、という仕様にしたいです
896デフォルトの名無しさん
2023/02/05(日) 16:08:42.77ID:2ccsuJcO897デフォルトの名無しさん
2023/02/15(水) 16:03:34.65ID:b8FtSvc2 GASじゃなくてスプレッドシートなのだけど、
検索窓閉じた時検索結果に跳ぶの避けられませんかね。
検索窓閉じた時検索結果に跳ぶの避けられませんかね。
898デフォルトの名無しさん
2023/02/18(土) 13:58:20.49ID:W3nKwjDO やりたいこと
スプレッドシートに沢山ある あ い う とかいう文字列を
i[あ.い.う...]
t[a.b.c...]
という配列使って一度に置換作業がしたい。
i[1]→t[1]みたいな感じで。
replafeとforの組み合わせでなんとかなるかな?と思ったのですが、リファレンス読む限りreplace(a,b)の置換のa部分に変数を用いることは出来ないようなので他の方法を探しています。
ご教授頂きたく。
スプレッドシートに沢山ある あ い う とかいう文字列を
i[あ.い.う...]
t[a.b.c...]
という配列使って一度に置換作業がしたい。
i[1]→t[1]みたいな感じで。
replafeとforの組み合わせでなんとかなるかな?と思ったのですが、リファレンス読む限りreplace(a,b)の置換のa部分に変数を用いることは出来ないようなので他の方法を探しています。
ご教授頂きたく。
899デフォルトの名無しさん
2023/02/18(土) 18:58:41.14ID:W3nKwjDO900デフォルトの名無しさん
2023/02/19(日) 14:19:59.95ID:bukleA+Y >>898
日立?
日立?
901デフォルトの名無しさん
2023/02/19(日) 22:06:54.53ID:sztA44Ir902デフォルトの名無しさん
2023/02/20(月) 02:05:22.77ID:6OqVkYRD903898
2023/02/20(月) 16:04:41.81ID:4jGYSd8p 駄目でした…
includesにしてもmatchにしても配列[ ]で指定するとうまく動いてくれません。
配列を作らずfor文で無理やりセルを置換させるという荒業で解決しましたが時間がかかり過ぎて実用的でなく。
やりたいこと
table[[あ],[か],[さ],[た]...]
before[あ][い]...
after[ア][イ]...
以上の配列があり、
tableに対しbefore[i]を総当りで検索し一致したらafter[i]に置き換える。
includesにしてもmatchにしても配列[ ]で指定するとうまく動いてくれません。
配列を作らずfor文で無理やりセルを置換させるという荒業で解決しましたが時間がかかり過ぎて実用的でなく。
やりたいこと
table[[あ],[か],[さ],[た]...]
before[あ][い]...
after[ア][イ]...
以上の配列があり、
tableに対しbefore[i]を総当りで検索し一致したらafter[i]に置き換える。
904デフォルトの名無しさん
2023/02/20(月) 18:43:52.85ID:czK6pNoa >>903
やりたいことがいまいちわからん
こういうこと?
# ひらがなをカタカナに変換
table = [['あ','ア'], ['い','イ'], ['う','ウ'], ['え','エ'], ['お','オ'] ];
before = ['あ','い','う','え','お'];
after = before.map(b => table.find(a => b === a[0])[1]);
やりたいことがいまいちわからん
こういうこと?
# ひらがなをカタカナに変換
table = [['あ','ア'], ['い','イ'], ['う','ウ'], ['え','エ'], ['お','オ'] ];
before = ['あ','い','う','え','お'];
after = before.map(b => table.find(a => b === a[0])[1]);
905898
2023/02/20(月) 18:49:29.88ID:83YdaF3i ありがとうございます。配列の中身は適当です…。
表と配列2種類の3つの要素があって、表にある配列1の要素を見つけたら配列2に置き換えるということをしたかったのです。
ですがお陰様でなんとかなりました!
二次元配列をflat()で一次元にして、splice使いました。
その後再度2次元配列に戻して元の形に直しました。
表と配列2種類の3つの要素があって、表にある配列1の要素を見つけたら配列2に置き換えるということをしたかったのです。
ですがお陰様でなんとかなりました!
二次元配列をflat()で一次元にして、splice使いました。
その後再度2次元配列に戻して元の形に直しました。
906898
2023/02/21(火) 00:26:18.85ID:B3qxCQs3 >>904
mapメソッドはまだ理解できておらず…。
その一行で終わらせられるように勉強していきたいと思います。
結局以下のようになりました。ご教授ありがとうございました。
//1次元配列への変換。
let array = array.flat();
//array[x]とbefore[i]が一致したら置換(before→after)
for(let x = 0 ; x < array.length ; i++ ){
for(let i = 0 ; i < before.length ; i++ ){
if(array[x] == be[i]){
array.splice(x,1,after[i]);
}
}
//2次元配列に再変換、あとで貼付する。
let array2 = [];
let numOfElements = 6;//表の元のTableが6列あったので。
for(let t = 0; 0 < array.length ; t){
array2.push(array.splice( t, numOfElements ));
}
mapメソッドはまだ理解できておらず…。
その一行で終わらせられるように勉強していきたいと思います。
結局以下のようになりました。ご教授ありがとうございました。
//1次元配列への変換。
let array = array.flat();
//array[x]とbefore[i]が一致したら置換(before→after)
for(let x = 0 ; x < array.length ; i++ ){
for(let i = 0 ; i < before.length ; i++ ){
if(array[x] == be[i]){
array.splice(x,1,after[i]);
}
}
//2次元配列に再変換、あとで貼付する。
let array2 = [];
let numOfElements = 6;//表の元のTableが6列あったので。
for(let t = 0; 0 < array.length ; t){
array2.push(array.splice( t, numOfElements ));
}
907デフォルトの名無しさん
2023/02/21(火) 02:43:28.40ID:6tAoYaOK >>906
flat使わなくてもいい
for(let i = 0; i< array.length; i++) {
for(let j = 0; j< array[i].length; j++) {
if(before.includes(array[i][j])) {
array[i][j] = after[before.indexOf(array[i][j])];
}
}
}
map使うなら
array2 = array.map(r => r.map(c => before.includes(c) ? after[before.indexOf(c)] : c));
flat使わなくてもいい
for(let i = 0; i< array.length; i++) {
for(let j = 0; j< array[i].length; j++) {
if(before.includes(array[i][j])) {
array[i][j] = after[before.indexOf(array[i][j])];
}
}
}
map使うなら
array2 = array.map(r => r.map(c => before.includes(c) ? after[before.indexOf(c)] : c));
908898
2023/02/21(火) 08:58:31.52ID:B3qxCQs3 >>907
そのarray[i][j]の[j]を入れるとindexOfにしてもincludesにしてもうちの環境?では何故かエラー出て読み込めなかったんですよ。(
確かcannot read properties of undefinedだった筈)
それ外すとエラーなく読んだので仕方なくflat入れた次第です。
因みに
arrayX=array[x]
arrayY=array[y]
みたいに入れ子しても駄目でした。
そのarray[i][j]の[j]を入れるとindexOfにしてもincludesにしてもうちの環境?では何故かエラー出て読み込めなかったんですよ。(
確かcannot read properties of undefinedだった筈)
それ外すとエラーなく読んだので仕方なくflat入れた次第です。
因みに
arrayX=array[x]
arrayY=array[y]
みたいに入れ子しても駄目でした。
909898
2023/02/21(火) 09:10:16.56ID:B3qxCQs3 確認したらエラー全然違うし書いてること散々でした
訂正
出てたエラーは多分is not defined
下の入れ子は
arrayX=array[x]
arrayY=arrayX[y]
みたいにしても同じエラーだったかと。
訂正
出てたエラーは多分is not defined
下の入れ子は
arrayX=array[x]
arrayY=arrayX[y]
みたいにしても同じエラーだったかと。
910デフォルトの名無しさん
2023/02/21(火) 23:07:45.74ID:6tAoYaOK >>908
>そのarray[i][j]の[j]を入れるとindexOfにしてもincludesにしてもうちの環境?では何故かエラー出て
たぶん配列の添字が範囲外になってるんだろうけど
for文よりfor ofとかforEachのほうがシンプルにかける
const array2 = [];
for(let row of array) {
let cols = [];
for(let col of row) {
if(before.includes(col)) {
cols.push(after[before.indexOf(col)]);
}
else {
cols.push(col);
}
}
array2.push(cols);
}
const array2 = [];
array.forEach(function(row, i) {
row.forEach(function(col, j) {
if(before.includes(col)) {
array[i][j] = after[before.indexOf(col)];
}
});
});
>そのarray[i][j]の[j]を入れるとindexOfにしてもincludesにしてもうちの環境?では何故かエラー出て
たぶん配列の添字が範囲外になってるんだろうけど
for文よりfor ofとかforEachのほうがシンプルにかける
const array2 = [];
for(let row of array) {
let cols = [];
for(let col of row) {
if(before.includes(col)) {
cols.push(after[before.indexOf(col)]);
}
else {
cols.push(col);
}
}
array2.push(cols);
}
const array2 = [];
array.forEach(function(row, i) {
row.forEach(function(col, j) {
if(before.includes(col)) {
array[i][j] = after[before.indexOf(col)];
}
});
});
911デフォルトの名無しさん
2023/02/21(火) 23:08:33.93ID:6tAoYaOK あと上のmapは省略しすぎてわかりにくかったのでアロー関数と三項演算子をやめたらこうなる
const array2 = array.map(function(row) {
return row.map(function(col) {
if(before.includes(col)) {
return after[before.indexOf(col)];
}
else {
return col;
}
});
});
const array2 = array.map(function(row) {
return row.map(function(col) {
if(before.includes(col)) {
return after[before.indexOf(col)];
}
else {
return col;
}
});
});
912898
2023/02/22(水) 11:50:37.27ID:7vReBJfV913デフォルトの名無しさん
2023/02/28(火) 21:38:42.26ID:8PRLUyLU スプレッドシートの共有で閲覧権限を持っている人の
印刷は可能でファイルのダウンロードだけ禁止することは可能でしょうか?
印刷は可能でファイルのダウンロードだけ禁止することは可能でしょうか?
914デフォルトの名無しさん
2023/03/01(水) 10:13:26.28ID:NPxLOyBL 共有アイテムのファイルにスターをつける方法を教えてください
宜しくお願いしますm(_ _)m
宜しくお願いしますm(_ _)m
915デフォルトの名無しさん
2023/03/01(水) 14:17:21.21ID:csCK6+UB sheetクラスを取得する方法ってgetSheetByNameとgetActiveSheetしかないよね?
getSheetBySheetIdがないのが謎なんだけどシートはシート名で管理するしかない?
getSheetBySheetIdがないのが謎なんだけどシートはシート名で管理するしかない?
917デフォルトの名無しさん
2023/03/24(金) 19:19:34.21ID:GCLzu5nr Rangeオブジェクトから、セルアドレスの文字列を取得したい場合
Excelならr.Address()で相対参照や絶対参照を取得できますが
GASで同じようなことできるメソッドあります?
getA1Notation()だと相対アドレスでしか取得できないようで…
Excelならr.Address()で相対参照や絶対参照を取得できますが
GASで同じようなことできるメソッドあります?
getA1Notation()だと相対アドレスでしか取得できないようで…
918デフォルトの名無しさん
2023/03/24(金) 20:40:28.68ID:h6PMjTMa919デフォルトの名無しさん
2023/03/25(土) 11:52:56.28ID:TC3JXJ5y >>918
例えば
A1のRangeオブジェクトから
$A$1という文字列を取得できないかなと
GASから条件付き書式を設定するのに使いたいです
なぜ使いたいかというと
複数人で編集してコピペを繰り返すと条件付き書式が破壊されてしまうので
それを上書きリセットするためです
逆に、条件付書式だけロックかけて切り取ったり貼り付けたり出来ない設定ができるならそれで十分なのですが…
例えば
A1のRangeオブジェクトから
$A$1という文字列を取得できないかなと
GASから条件付き書式を設定するのに使いたいです
なぜ使いたいかというと
複数人で編集してコピペを繰り返すと条件付き書式が破壊されてしまうので
それを上書きリセットするためです
逆に、条件付書式だけロックかけて切り取ったり貼り付けたり出来ない設定ができるならそれで十分なのですが…
920デフォルトの名無しさん
2023/03/25(土) 17:53:03.57ID:nYxwu6kr >>919
>複数人で編集してコピペを繰り返すと条件付き書式が破壊されてしまうのでそれを上書きリセットするためです
通常の書式ならonEditで変更されたセルの書式を変更するだけでいいけど
条件付き書式をGAS上で扱ったことなかったから調べたけどちょっと面倒だね
そんでよくよく考えてみたらそもそもGAS使うならonEditで書式変更すればいいだけだから条件付き書式を使う必要がないと思った
>複数人で編集してコピペを繰り返すと条件付き書式が破壊されてしまうのでそれを上書きリセットするためです
通常の書式ならonEditで変更されたセルの書式を変更するだけでいいけど
条件付き書式をGAS上で扱ったことなかったから調べたけどちょっと面倒だね
そんでよくよく考えてみたらそもそもGAS使うならonEditで書式変更すればいいだけだから条件付き書式を使う必要がないと思った
921デフォルトの名無しさん
2023/04/04(火) 12:37:38.49ID:dAPefWGR スプレッドシートにスクリプト作成して権限付与して動作するように設定したあと
そのスプレッドシートをコピーするとスクリプトもコピーされるようですが
スクリプトの権限やトリガーは設定しなおしが必要のようです。
イメージ的には、vba付のExcelをコピーして別ファイルとして保存して
毎月のデータを作成していく、みたいなことがしたいんですが
その辺コピーするだけで全部引き継がれるみたいな設定ないのでしょうか?
そのスプレッドシートをコピーするとスクリプトもコピーされるようですが
スクリプトの権限やトリガーは設定しなおしが必要のようです。
イメージ的には、vba付のExcelをコピーして別ファイルとして保存して
毎月のデータを作成していく、みたいなことがしたいんですが
その辺コピーするだけで全部引き継がれるみたいな設定ないのでしょうか?
922デフォルトの名無しさん
2023/04/11(火) 18:45:08.89ID:u8YBlLPL 類似画像を判別できるようなライブラリとか公開されてるコードありますか?
検索するとpythonだとImageHashってライブラリがあるんだけどGASで同じようなことしたい
検索するとpythonだとImageHashってライブラリがあるんだけどGASで同じようなことしたい
923デフォルトの名無しさん
2023/04/21(金) 16:25:28.26ID:vnxhj4My ごめんgoogleスプレッドシートの質問スレがみつからずこちらで質問させてください。
シートのある列をユーザーごとの閲覧を制限かけたい
有効な方法ありますか?
シートのある列をユーザーごとの閲覧を制限かけたい
有効な方法ありますか?
924デフォルトの名無しさん
2023/04/21(金) 16:53:56.40ID:8VcMj5ya 閲覧の制限はファイル単位でしか出来ないでしょ
シート、セル(列/行)単位は編集の制限しか出来ない
シート、セル(列/行)単位は編集の制限しか出来ない
925デフォルトの名無しさん
2023/04/21(金) 17:40:05.18ID:vnxhj4My ありがとうございます。
確かに「表示」→「保護されている範囲」でできそうだったけど。やっぱりだめでした。
諦めて、もう一つリンクしたファイルのシート作ってそちらに閲覧されたくない列を追加します。
確かに「表示」→「保護されている範囲」でできそうだったけど。やっぱりだめでした。
諦めて、もう一つリンクしたファイルのシート作ってそちらに閲覧されたくない列を追加します。
926デフォルトの名無しさん
2023/05/02(火) 21:52:22.95ID:39G20EoK Googleカレンダーに予定を追加するプログラムを使ってるんだけど、「場所を追加」ちゃんと場所を追加したいです
以下詳細
普通に手作業でGoogleカレンダーに予定を追加するときは、「場所を追加」に場所の名前を入力すると候補が出てきて、そこから選ぶと、そこに間に合うためには何時に家を出ればいいかの通知が来たり、Android版のGoogleカレンダーだと予定の背景がその場所の写真になったりします。
で、GASで予定を追加するとき、場所を指定するためにGoogleマップのURLを使ってるんだけど、それだとURLが表示されるのみで、上記の通知とか背景写真とかが実行されません。
公式ドキュメントでも {location: 'Conference Room'}とされており、Googleマップ上の場所を使う気がなさそうです。
ちゃんとした「場所の追加」は、ウェブ上でマウスで操作しないとできないのでしょうか?
以下詳細
普通に手作業でGoogleカレンダーに予定を追加するときは、「場所を追加」に場所の名前を入力すると候補が出てきて、そこから選ぶと、そこに間に合うためには何時に家を出ればいいかの通知が来たり、Android版のGoogleカレンダーだと予定の背景がその場所の写真になったりします。
で、GASで予定を追加するとき、場所を指定するためにGoogleマップのURLを使ってるんだけど、それだとURLが表示されるのみで、上記の通知とか背景写真とかが実行されません。
公式ドキュメントでも {location: 'Conference Room'}とされており、Googleマップ上の場所を使う気がなさそうです。
ちゃんとした「場所の追加」は、ウェブ上でマウスで操作しないとできないのでしょうか?
927デフォルトの名無しさん
2023/05/03(水) 00:25:10.26ID:2fvruydV >>926
URLじゃなくてその場所の名前か住所、もしくは緯度経度を入れればいいんじゃないの?
URLじゃなくてその場所の名前か住所、もしくは緯度経度を入れればいいんじゃないの?
928デフォルトの名無しさん
2023/05/03(水) 03:09:39.55ID:CT7gAj9T >>927
それが名前や住所を入れても、その文字列が表示されるだけのようです
こんな感じ
https://i.imgur.com/pn88z8w.jpg
ブラウザかアプリで場所を選択した時には場所と認識されるのか、こう表示されます
https://i.imgur.com/k3K5mhe.jpg
それが名前や住所を入れても、その文字列が表示されるだけのようです
こんな感じ
https://i.imgur.com/pn88z8w.jpg
ブラウザかアプリで場所を選択した時には場所と認識されるのか、こう表示されます
https://i.imgur.com/k3K5mhe.jpg
929デフォルトの名無しさん
2023/05/16(火) 22:03:10.90ID:9Kd/3stA ゲッ!!(/||| ̄▽)y-ξ⌒◇ヾ( ̄  ̄;)ジュッ
930デフォルトの名無しさん
2023/07/08(土) 12:42:20.50ID:CwJ0Byq0 質問させてください
Googleフォームの送信時イベントで入力された値を取るために
イベントを作成しましたが、どうしてもイベントパラメータがnullになってしまいます
Webページにあるサンプルではeからいろいろな情報が取れるように書かれているのですが、nullとなってしまう理由がわからずに困っています
function myFunction(e) {
Logger.log("myFunction start")
Logger.log(e)
}
— ログ
12:27:10 お知らせ 実行開始
12:27:10 情報 myFunction start
12:27:10 情報 null
12:27:10 お知らせ 実行完了
Googleフォームの送信時イベントで入力された値を取るために
イベントを作成しましたが、どうしてもイベントパラメータがnullになってしまいます
Webページにあるサンプルではeからいろいろな情報が取れるように書かれているのですが、nullとなってしまう理由がわからずに困っています
function myFunction(e) {
Logger.log("myFunction start")
Logger.log(e)
}
— ログ
12:27:10 お知らせ 実行開始
12:27:10 情報 myFunction start
12:27:10 情報 null
12:27:10 お知らせ 実行完了
931デフォルトの名無しさん
2023/07/08(土) 17:00:03.61ID:IeBiUrvH >>930
トリガーの設定してる?
トリガーの設定してる?
932デフォルトの名無しさん
2023/08/22(火) 23:04:26.43ID:+ZplHR9+ GASではなく、スプレッドシートの質問なのですが、もし適切なスレッドがあったら誘導お願いします
セルに例えば「130409.67」と入力し、
表示形式>数字>通貨(端数切り捨て)
に設定すると、小数点以下が切り捨てではなく四捨五入されてしまいます。
これはなにか私の使い方がおかしいのでしょうか?
また、他の方法でも良いので、内部的には小数点を保持しつつ、表示上だけ小数点以下を切り捨てる(非表示)する方法があれば教えてください。宜しくお願いします。
セルに例えば「130409.67」と入力し、
表示形式>数字>通貨(端数切り捨て)
に設定すると、小数点以下が切り捨てではなく四捨五入されてしまいます。
これはなにか私の使い方がおかしいのでしょうか?
また、他の方法でも良いので、内部的には小数点を保持しつつ、表示上だけ小数点以下を切り捨てる(非表示)する方法があれば教えてください。宜しくお願いします。
933デフォルトの名無しさん
2023/09/10(日) 09:27:06.36ID:yM7j2B0I オhル
934デフォルトの名無しさん
2023/09/22(金) 13:52:01.19ID:dkRHHNCe GTKは糞
935デフォルトの名無しさん
2023/09/24(日) 09:36:46.05ID:2YTVyUlC 君は失格
やり治せ
やり治せ
936デフォルトの名無しさん
2023/10/20(金) 12:46:49.67ID:/M3RKJCH GAS抜きで
937デフォルトの名無しさん
2023/10/20(金) 20:23:13.56ID:c9EoYnQA938デフォルトの名無しさん
2023/10/31(火) 16:30:00.40ID:qmiHWWBC940デフォルトの名無しさん
2024/03/10(日) 15:35:26.40ID:H28l+VF2 スプレッドシートについての質問です。
SBI証券のマイページからポートフォリオのcsvファイルをダウンロードすることができます。
GASにより、自動で、ポートフォリオの円グラフを作りたいのですが、スクリプトはコンテナバインドではなくスタンドアローンでないと駄目でしょうか?
毎日、csvファイルをダウンロードして、円グラフを描く予定なので、コンテナバインドだと駄目ですよね?
SBI証券のマイページからポートフォリオのcsvファイルをダウンロードすることができます。
GASにより、自動で、ポートフォリオの円グラフを作りたいのですが、スクリプトはコンテナバインドではなくスタンドアローンでないと駄目でしょうか?
毎日、csvファイルをダウンロードして、円グラフを描く予定なので、コンテナバインドだと駄目ですよね?
941デフォルトの名無しさん
2024/03/10(日) 15:38:07.27ID:H28l+VF2 でもスタンドアロンにすると、スプレッドシートを開くときに、ファイルのIDを指定しないと駄目ですよね。
このIDが毎日変わることになると思いますが、この部分をどうすれば楽ができるでしょうか?
このIDが毎日変わることになると思いますが、この部分をどうすれば楽ができるでしょうか?
942デフォルトの名無しさん
2024/03/10(日) 15:55:50.28ID:vw/rAwFk なんでコンテナバインドじゃだめなの?
トリガーで1日1回実行すればいいんじゃないの
トリガーで1日1回実行すればいいんじゃないの
943デフォルトの名無しさん
2024/03/10(日) 16:29:51.77ID:H28l+VF2 >>942
自動でダウンロードして来るとかそういうことを想定していますか?
そういう技術はありませんので、手動でダウンロードしてきて、Google Driveにアップロードする。
これを毎日やろうと考えています。
そうするとファイル自体が毎日変わりますし、IDも変わってしまうのではないかと思います。
バインドを新しい他のファイルに引き継ぐことはできませんよね?
自動でダウンロードして来るとかそういうことを想定していますか?
そういう技術はありませんので、手動でダウンロードしてきて、Google Driveにアップロードする。
これを毎日やろうと考えています。
そうするとファイル自体が毎日変わりますし、IDも変わってしまうのではないかと思います。
バインドを新しい他のファイルに引き継ぐことはできませんよね?
944デフォルトの名無しさん
2024/03/10(日) 16:50:03.03ID:vw/rAwFk945デフォルトの名無しさん
2024/03/10(日) 17:01:06.12ID:H28l+VF2 >>944
なるほど、ありがとうございました。
そういうことができるんですね。
ということは、スタンドアロンである固定したフォルダからファイルの一覧を取得する。
SBI証券からダウンロードしてきたcsvファイルは、その日の日付をファイル名とする。
ファイルの一覧からその日の日付のファイルをオープンして、円グラフを作成する。
ありがとうございました。
なるほど、ありがとうございました。
そういうことができるんですね。
ということは、スタンドアロンである固定したフォルダからファイルの一覧を取得する。
SBI証券からダウンロードしてきたcsvファイルは、その日の日付をファイル名とする。
ファイルの一覧からその日の日付のファイルをオープンして、円グラフを作成する。
ありがとうございました。
946デフォルトの名無しさん
2024/03/11(月) 11:33:26.37ID:Voh59fAx csvファイルに、
'+7441000
というデータがあります。
これをSpreadsheetとしてインポートすると、セル上で
+7441000
と表示されます。
先頭に「+」がついていますが、扱いは文字列ではなく、数字です。
この「+」をGASを使って削除したいのですが、どうすればいいでしょうか?
このセルを選択した状態で「fx」の右隣をみると「'+7441000」となっています。
'+7441000
というデータがあります。
これをSpreadsheetとしてインポートすると、セル上で
+7441000
と表示されます。
先頭に「+」がついていますが、扱いは文字列ではなく、数字です。
この「+」をGASを使って削除したいのですが、どうすればいいでしょうか?
このセルを選択した状態で「fx」の右隣をみると「'+7441000」となっています。
947デフォルトの名無しさん
2024/03/11(月) 21:30:14.93ID:Voh59fAx948デフォルトの名無しさん
2024/04/04(木) 12:51:32.09ID:q67OTvc3 getUi().showModelessDialog()の挙動おかしくなった?
他をクリックしたら閉じるようになったし移動も出来なくなった
バグですか?
他をクリックしたら閉じるようになったし移動も出来なくなった
バグですか?
949デフォルトの名無しさん
2024/12/12(木) 17:27:14.20ID:/P1+mPAL createTextFinderで正常に動いてたのにソース変更してないのに最近になって
TypeError: Cannot read properties of undefined (reading 'indexOf')と言うようになった
他の部分が悪いのか、切り分けるためcreateTextFinderだけ機能させるコードを書いてたけど同様のエラー
とりあえず別の手段で回避させたけどおま環?
TypeError: Cannot read properties of undefined (reading 'indexOf')と言うようになった
他の部分が悪いのか、切り分けるためcreateTextFinderだけ機能させるコードを書いてたけど同様のエラー
とりあえず別の手段で回避させたけどおま環?
950デフォルトの名無しさん
2024/12/13(金) 13:21:51.42ID:ouGUX1+B だからjsは馬鹿にされるんだ
951デフォルトの名無しさん
2025/01/05(日) 10:08:17.06ID:8kdOFrcZ OneDriveの質問ここでok?
952デフォルトの名無しさん
2025/01/05(日) 10:17:13.58ID:xU+8tKpK gasってgoogleのサービス。onedriveはmicrosoftのサービスで違う
スクリプトからonedriveを操作したいとかじゃないよね?
スレチだけど一応聞いてみれば?誰か分かるかもね
スクリプトからonedriveを操作したいとかじゃないよね?
スレチだけど一応聞いてみれば?誰か分かるかもね
953デフォルトの名無しさん
2025/01/12(日) 21:20:33.84ID:EIvdvWG6 スプレッドシートさ、ExcelVBAでできる
とあるRangeからとあるRangeまでの範囲を指定して新たにRangeを作る、てのが用意されてないの地味に不便だよね
getRangeもoffsetも「座標~座標」の直接範囲指定がなくて軒並み「座標~行列数」しかないのがめんどくさい…そう思ってるの俺だけか?
A1形式の文字列をガッチャンコすれば出来るっちゃ出来るが、お前それでいいのか感がすごい
とあるRangeからとあるRangeまでの範囲を指定して新たにRangeを作る、てのが用意されてないの地味に不便だよね
getRangeもoffsetも「座標~座標」の直接範囲指定がなくて軒並み「座標~行列数」しかないのがめんどくさい…そう思ってるの俺だけか?
A1形式の文字列をガッチャンコすれば出来るっちゃ出来るが、お前それでいいのか感がすごい
954デフォルトの名無しさん
2025/01/16(木) 13:26:46.58ID:5fNIPSC6 スプレッドシートとDriveAPIについて質問です。
他のGoogleアカウントがオーナーとして持ってるスプレッドシートで、別アカウントを閲覧者として共有。
その別アカウント側でAPI設定し、そのAPIを使ってxlsx形式でExportすることは可能?
他のGoogleアカウントがオーナーとして持ってるスプレッドシートで、別アカウントを閲覧者として共有。
その別アカウント側でAPI設定し、そのAPIを使ってxlsx形式でExportすることは可能?
955デフォルトの名無しさん
2025/01/16(木) 19:10:14.77ID:OQ3rw5hF 自分で試せよ。やりたいならやってみれば良いだろ
956デフォルトの名無しさん
2025/01/16(木) 19:13:42.90ID:RFhmsTBB 過疎ってる上にスクリプト荒らしが跋扈し誰か来ても煽ってくるやつしかおりゃん
いまどきのプログラマーはみんなChatGPTかCopilotに質問投げてるよ
5ちゃんねるはおしまい!
いまどきのプログラマーはみんなChatGPTかCopilotに質問投げてるよ
5ちゃんねるはおしまい!
957デフォルトの名無しさん
2025/01/17(金) 19:35:55.09ID:S3TtCEi5 みんなぁ……どこ逝っちゃったんだブー…………
958デフォルトの名無しさん
2025/01/17(金) 19:39:30.95ID:S3TtCEi5 なんでこの掲示板まだ運営してるの~?
959デフォルトの名無しさん
2025/01/17(金) 19:41:02.24ID:S3TtCEi5 \
 ̄ヽ、 _ノ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
`'ー '´
O
o と
。 ,. -ー冖'⌒'ー-、 思
,ノ \ う
/ ,r‐へへく⌒'¬、 ヽ キ
{ノ へ.._、 ,,/~` 〉 } ,r=-、 モ
/プ ̄`y'¨Y´ ̄ヽ―}j=く /,ミ=/ オ
ノ /レ'>-〈_ュ`ー‐' リ,イ} 〃 / タ
/ _勺 イ;;∵r;==、、∴'∵; シ 〃 / で
,/ └' ノ \ こ¨` ノ{ー--、〃__/ あ
人__/ー┬ 个-、__,,.. ‐'´ 〃`ァーァー\ っ
. / |/ |::::::|、 〃 /:::::/ ヽ た
/ | |::::::|\、_________/' /:::::/〃
 ̄ヽ、 _ノ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
`'ー '´
O
o と
。 ,. -ー冖'⌒'ー-、 思
,ノ \ う
/ ,r‐へへく⌒'¬、 ヽ キ
{ノ へ.._、 ,,/~` 〉 } ,r=-、 モ
/プ ̄`y'¨Y´ ̄ヽ―}j=く /,ミ=/ オ
ノ /レ'>-〈_ュ`ー‐' リ,イ} 〃 / タ
/ _勺 イ;;∵r;==、、∴'∵; シ 〃 / で
,/ └' ノ \ こ¨` ノ{ー--、〃__/ あ
人__/ー┬ 个-、__,,.. ‐'´ 〃`ァーァー\ っ
. / |/ |::::::|、 〃 /:::::/ ヽ た
/ | |::::::|\、_________/' /:::::/〃
960デフォルトの名無しさん
2025/02/12(水) 05:27:59.68ID:EChoPnIL アンドロイドのGoogleスプレッドシートのセルに日付を入れたら自動で○/○(月)と表示されるようにしたい。
どうかよろしくお願いいたします。
どうかよろしくお願いいたします。
961デフォルトの名無しさん
2025/02/12(水) 07:18:57.16ID:vZOAXNAs セルの書式設定でカスタム日付からできるけど、日付の後に半角でも良いからスペース入れないと2/12 ?とはならないね
細かい解説はぐぐってくれ
細かい解説はぐぐってくれ
962デフォルトの名無しさん
2025/02/12(水) 07:20:02.17ID:vZOAXNAs 文字化けした 2/12 (水) ね
頭に0を入れるか入れないかも決められるみたい
頭に0を入れるか入れないかも決められるみたい
963デフォルトの名無しさん
2025/02/12(水) 08:21:38.43ID:AFDgFLET スレ違い
964デフォルトの名無しさん
2025/02/12(水) 10:54:44.45ID:WpGOIYcm これが博士か
965デフォルトの名無しさん
2025/02/20(木) 20:37:16.70ID:74VDrAOZ 閑古鳥すらいなくなった糞過疎掲示板
それが5ちゃんねる
それが5ちゃんねる
966デフォルトの名無しさん
2025/02/28(金) 17:03:24.70ID:kF3VgEHE もう2人くらいしかいない
967デフォルトの名無しさん
2025/03/02(日) 03:32:16.42ID:SuUkbROl たまに覗いてる
そういやContactsApp死んだな
People APIダルい
そういやContactsApp死んだな
People APIダルい
968デフォルトの名無しさん
2025/06/04(水) 20:18:23.69ID:BeLNgZJK969デフォルトの名無しさん
2025/10/30(木) 01:29:21.98ID:XzU25Vj2 Geminiで書かせると捗るな
同じGoogle製だし間違いも少なめ
たまに google.script.run.withFinally()とか
存在しないモン吐かれて笑うけど
もうこれでいいじゃんレベル
同じGoogle製だし間違いも少なめ
たまに google.script.run.withFinally()とか
存在しないモン吐かれて笑うけど
もうこれでいいじゃんレベル
970デフォルトの名無しさん
2025/11/11(火) 14:18:00.93ID:crDtfQHZ jsの方言大杉
レスを投稿する
レス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 ★2 [Hitzeschleier★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★2 [ぐれ★]
- 【中国局長】両国関係に「深刻な影響」 首相発言の撤回要求 [蚤の市★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★3 [BFU★]
- 新米の予想収穫量、1割増 746万8000トン―農水省 [蚤の市★]
- 高市「発言は撤回しない。謝罪もするな。外務省局長!任せたぞ。」👈なにをさせたかったの?😲 [826239858]
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 【悲報】『岡田が日和って逃げたのに高市が自分から突っ込んだ発言をして自爆した』⬅国会答弁、実際はこれだった…… [158478931]
- 自分に自信がない女の子、陽キャ美容室で80cmのエクステを付けた結果wwwwwwwwwwwwwwwwwww [329329848]
- 【実況】博衣こよりのえちえち歌枠🧪
- 外務省局長、よくわからないまま帰国へ [834922174]
