【MACRO】Google Apps Script 質問スレ【DRIVE】

1デフォルトの名無しさん2014/06/29(日) 11:07:03.38ID:5HmND7Qc
Google Apps Script でのプログラミング等に関する質問スレです
Excel や Access の VBA に不満のあるあなた
web アプリだけでなくクライアントアプリからも利用したいあなた
ローカルなデータベースやファイルだとバックアップに不安のあるあなた

ム板に無かったので立ててみます

Google Apps Script
ttps://developers.google.com/apps-script/
Google Drive API
ttps://developers.google.com/drive/
Getting Started with the Google Data Python Library
ttps://developers.google.com/gdata/articles/python_client_lib

■関連スレ
Google Maps API 質問箱
http://peace.2ch.net/test/read.cgi/tech/1131627583/
Microsoft SkyDrive API
http://peace.2ch.net/test/read.cgi/tech/1385604796/
【GoogleAppsScript】猿92【研究せよ!!!】
http://nozomi.2ch.net/test/read.cgi/php/1398600864/
GoogleAPIってどうよ?
http://nozomi.2ch.net/test/read.cgi/php/1018614427/
Google App Engine for Python 6アプ目
http://nozomi.2ch.net/test/read.cgi/php/1358570953/
Google App Engine for java
http://peace.2ch.net/test/read.cgi/tech/1317639323/
GoogleWebToolkit[GWT]について語ろう
http://nozomi.2ch.net/test/read.cgi/php/1147975874/

483デフォルトの名無しさん2018/05/14(月) 12:07:03.70ID:2SPouDsA
>>482
ありがとうございます
ガスが一般的なんですかね

484デフォルトの名無しさん2018/05/14(月) 13:31:22.77ID:dnGRWxRE
>>481
ぎゃす

485デフォルトの名無しさん2018/05/23(水) 19:22:31.65ID:Au5e7VGg
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

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);
はうまくいかないのでしょうか?

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検索して見たのですが見つからないでいます
よろしくおねがいいたします

490デフォルトの名無しさん2018/05/25(金) 09:48:46.51ID:JEsKWWiQ
google apps script pdf margin
でググったらstackoverflowとかヒットするけど見てみた?
俺は見てないけど。

491デフォルトの名無しさん2018/05/25(金) 13:10:56.83ID:zfLEVsZm
日々の記録をgoogle apps script で記録してたんだが1ヶ月忙しくて
記録の確認してなかったら先月4月26日以降の記録が取れてなかった
プロジェクトを動かすと「承認が必要です」で前もやったことがあるような
画面がでて一つ一つのプロジェクトを自動実行させるために承認設定をした
100ぐらいプロジェクトがあるんだが一つ一つを手作業で承認させるのが
大変だし前もこんなことをさせられた記憶があるんだが
承認を一回で全てのプロジェクトを設定する方法とかないですかね?

492デフォルトの名無しさん2018/05/25(金) 16:14:05.22ID:XO9fqtgP
っていうかしばらくしたらまた承認求められそうでこわいな

493デフォルトの名無しさん2018/05/26(土) 08:10:21.44ID:hhovu7qg
>>490
ありがとうございます
設定することができました!

494デフォルトの名無しさん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

495デフォルトの名無しさん2018/06/01(金) 18:16:54.34ID:zHSboa0n
質問です
色んなサイトを見ながら、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は聞いた事無いですが調べてみます。

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使えないし
コード変えてバージョン上げずに更新しても変更反映してないから
バージョンだけが無駄に上がってく

いい方法教えてください

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/にリダイレクトされてからまたリダイレクトされるし…

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って固定値をもつのが気分的にいやっていうワガママです

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

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:IPuEyzUl
>>511
俺はWebサイト派
Qiitaあたりの情報で十分に勉強できた

516デフォルトの名無しさん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になにも入らないっぽい
ないならあきらめるが

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)
}

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:C1pVYns8
>>519
ブラウザの自動操作は、iMacros, Selenium IDE とか、

Ruby で、Selenium Webdriver を使うとか

5235222018/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

524デフォルトの名無しさん2018/10/14(日) 21:11:05.91ID:Qblq+S/g
>>523
ありがとう
ただ、できればgasでしたいのよね

5255222018/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

5265222018/10/14(日) 23:40:22.51ID:hWarSIQ5
>>525
修正

>CSS セレクターで、入力欄を指定して、入力する部分を表示がないよね
CSS セレクターで、入力欄を指定して、入力する部分がないよね

527デフォルトの名無しさん2018/10/19(金) 01:04:33.18ID:IuczYWmH
excelマクロをきっかけに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からも出来るよ

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
交換じゃなくて一方通行のスレ

新着レスの表示
レスを投稿する