【MACRO】Google Apps Script 質問スレ【DRIVE】 (968レス)
上下前次1-新
1(2): 2014/06/29(日)11:07 ID:5HmND7Qc(1/6) AAS
Google Apps Script でのプログラミング等に関する質問スレです
Excel や Access の VBA に不満のあるあなた
web アプリだけでなくクライアントアプリからも利用したいあなた
ローカルなデータベースやファイルだとバックアップに不安のあるあなた
ム板に無かったので立ててみます
Google Apps Script
外部リンク:developers.google.com
Google Drive API
外部リンク:developers.google.com
Getting Started with the Google Data Python Library
省16
842: 2022/03/31(木)13:19 ID:5pPwE+XM(1) AAS
コードを貼れ
843: 2022/04/01(金)06:42 ID:68FipywF(1) AAS
setvalueで値をセルに入れるのってリアルタイム反映じゃなくて
スタックしてて処理が終わるみたいな切りがいいところで
まとめて反映する仕様じゃないのけ?
クラウドベースの実行だからサーバー側の負荷軽減のためだと聞いたが
コード云々でなんとかなるなら知りたい
844(1): 2022/04/08(金)13:56 ID:PYg//+II(1/3) AAS
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番目の要素が空欄の配列が欲しいのだが
省3
845(1): 2022/04/08(金)18:27 ID:tiBN51P7(1/2) AAS
>>844
filter()とmap()要らなくない?
846(1): 2022/04/08(金)20:09 ID:PYg//+II(2/3) AAS
>>845
そうなのかな
ここの記事を読んだんだけど
外部リンク:iwb.jp
847: 2022/04/08(金)20:12 ID:PYg//+II(3/3) AAS
result = range.getValues().flat()
とりあえず .filter以下を消したら望んでた結果は得られた模様
848: 2022/04/08(金)20:16 ID:tiBN51P7(2/2) AAS
>>846
この記事は空白除去してるじゃん
849: 2022/04/08(金)20:28 ID:uSpd3hvB(1) AAS
セルに手入力された5:22とか8:24とかの見た目時間になってる単なる文字列を使って
時間の足し算をしたいんだが、なんかいいアイディアはないだろうか?
850: 2022/04/08(金)20:30 ID:TDBa7GsZ(1) AAS
足し算自体はスプレッドシート上の計算式ではなく
値だけ変数に入れてhas上でやりたい
851: 2022/04/14(木)12:07 ID:l9jSNk17(1) AAS
スプレッドシートに数十個のボタンを図形描画してスクリプトの割り当てをしたんだが何回設定しても
いつのまにかスクリプトの割り当てで割り当てたスクリプトが空欄に戻ってしまう
これって何か制限があったりするのだろうか
一通り設定して最初のボタンから確認していくと空欄に戻ってしまってて
ボタン押しても反応しない
設定した直後にボタン押すときはスクリプトが動いてるから最初から設定できてないわけではない
852: 2022/05/24(火)07:38 ID:78erdOqF(1) AAS
ClassroomAPIを使って
-----
Classroom.Courses.CourseWork.list(クラスルームのID).courseWork.forEach(w =>{
〜〜〜〜〜〜
})
-----
ってかんじで受講しているクラスで出された課題それぞれに対して処理をしているんだけど、
これだと提出済み課題に対しても処理してしまう。
提出済みか判定して、除外するためにはどうしたらいい?
853: 2022/05/27(金)11:50 ID:S0cy91Tb(1) AAS
提出済みか判定して、除外す提出済みか判定して、除外すればいい
854: 2022/05/28(土)11:07 ID:81XaDMLN(1) AAS
FastAPI
OCID
855: 2022/05/30(月)11:13 ID:Z6OL71NL(1) AAS
Google Apps Web API
動画リンク[YouTube]
856(2): 2022/07/22(金)09:02 ID:CcjlX4kF(1) AAS
質問します
ローカルにあるファイルをメールに添付して
指定時間に送信するみたいなことを
gasでやりたいのですが、
ローカルファイルをGoogleドライブに取り込むところから躓いてます
こういうやり方があるよ、とかこのHPが参考になる、みたいなのはありますか?
857(1): sage 2022/07/28(木)15:18 ID:5gdZfTov(1) AAS
m5stackでボタンを押す → スプレッドシートに書き込み → 編集をgmailで送信
というのをしたいなと。
参考にしたのはこのページ
外部リンク:knt60345blog.com
要はボタンを押すとスマホに通知がくるシステムを作りたいのです。ところがgmailの送信がされません。
やったこと
1.スプレッドシートに編集があったときに通知する
→ 手入力だと通知される。しかし、scriptによる編集では通知されない。
2.gas上で編集をトリガーにしてsendgmailを使う
→失敗。おそらく1と同じ理由
省4
858(1): 2022/08/03(水)00:57 ID:Mtys3/qj(1) AAS
>>856
簡単なのはGoogle DriveアプリでPCと同期させる方法かと思います。
859(1): 2022/08/03(水)15:39 ID:IS1ZoKH3(1) AAS
>>856
ローカルファイルと言うことはトリガー実行じゃないんだよね?
どういう操作を想定してるのかわからんけど、HTMLでダイアログ表示させるかdoGetでHTMLを表示させて
そのHTMLとJSでローカルファイルは読めるよ
外部リンク:tonari-it.com
>>857
これで普通に出来たぞ
function doPost() {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('シート1');
var range = sheet.getRange('A1');
省3
860: 2022/08/04(木)08:31 ID:CP8sLsBT(1) AAS
>>858-859
回答ありがとうございます
もう回答もらえないのかな?と諦めておりました
実はローカルファイルをトリガー実行(時間指定)でメールに添付させたいというのが希望する処理なのです
グーグルドライブアプリからならキーも取れそうですね
会社からグーグルドライブアプリの設置許可貰えたらやってみます
861(1): 2022/08/26(金)19:09 ID:fCaJRqVr(1) AAS
祝
有料化
862: 2022/08/26(金)20:13 ID:shwkM977(1) AAS
>>861
なんだそれ怖いこと言うなよ
ソースどこ?
863: 2022/08/31(水)11:27 ID:8zP5mkRm(1) AAS
googleSpaceのタスクにGASでタスク登録って可能?
登録しようとしても
GoogleJsonResponseException: API call to tasks.tasks.insert failed with error: Invalid task list ID
って吐かれる
IDはスペースのURL末尾を使ってる
864: 2022/09/15(木)22:22 ID:ZhCJ57CK(1) AAS
しばらく触ってないうちにスクリプトエディタが変わっていたんですが、新しいエディタでプロジェクトのコピーを保存したい場合ってどうしたら良いんでしょうか?
自作のスクリプトを使ってもらうのにコピーを保存してもらっていたので代わりの方法を探しています
865(1): 2022/10/25(火)20:43 ID:czhOEshi(1) AAS
Googleスプレッドシートの件で質問します。
A11からF11の列に、IMPORTRANGE()によって、他のスプレッドから取り込んだデータが入っています。行の数は未定(約300件ぐらい)です。
このままでは、元データのシートが更新されると、合わせてデータも更新されてしまいます。
この現在表示されているセルの値をそのまま、文字列としてセルに上書きするコードを記入したいのですが、どのように記述するとよいでしょうか?
866: 2022/10/26(水)01:21 ID:Dg1k8nd7(1) AAS
やりたいことがわからないのでもう少し詳しく書いてください
867: 865 2022/10/26(水)02:36 ID:wuQKMR4S(1) AAS
すみません。自己解決しました。
スレ汚し申し訳ありませんでした。
868: 2022/10/26(水)11:11 ID:t4LQIfXs(1) AAS
謝るより原因や解決方法を書いていってほしい
質問と解決法が揃ってればスレ汚しにならない
869: 2022/11/19(土)22:03 ID:7xWc9dNP(1) AAS
初心者で勉強中ですがplain bodyとかの正規表現が難しくて泣きそう
870(1): 2022/12/16(金)21:50 ID:/69Su096(1) AAS
1日一回gmailの中のメールをフィルタリングして集計してメールを遅るスクリプトを動かしてます。
今日までは毎日1回動いてましたが
本日近い時間帯で4回トリガーされていました。
このようなことが起こった方他におられませんでしょうか。
871: 2022/12/17(土)09:05 ID:CgXXVcB1(1) AAS
>>870
調べてみるのでソースだせる?
872: 2023/01/16(月)23:18 ID:XkS+UaR1(1) AAS
ボタンを押下したらテーブルを表示させたいんだけど、どうすればいいのでしょうか?
873: 2023/01/17(火)00:42 ID:fU/PH7pE(1) AAS
質問ざっくりしすぎ
874: 2023/01/18(水)09:15 ID:NRwxJvcS(1) AAS
毎月の商品ごとの売上グラフを作ってるんですけどAには赤、Bには青、Cには黃というように色指定は出来ますか?
グラフの並び順に1番目から赤、青、黃という順序では出来るんですけど、順番が変動しても大丈夫にしたいです
A2=
if "A", Red
"B", Blue
"C", Yellow
みたいに出来たらいいなと思ってます
875: 2023/01/20(金)23:25 ID:E/iTFMTm(1) AAS
二次配列の中の特定要素を一個だけじゃなくて任意の数があるか確認する方法ってある?
876: 2023/01/21(土)01:05 ID:tr5Udobt(1/6) AAS
どういうこと?
何か日本語不得意なやつ多すぎね?
上手く質問できないなら具体例を書けよ
例えば
[
[1, 2, ...],
[3, 4, ...]
]
という二次元があったとき、
○○が○○であることを確認する方法ってある?
省1
877: 2023/01/21(土)04:21 ID:a0kfmYv3(1) AAS
日本語というかこういうのはちゃんと説明できないからコード書けないんでは
878(1): 2023/01/21(土)16:40 ID:/REhm/9K(1) AAS
ボタンが押下されたら表が動的に表示されるようにしたいのですが、動的に作成された表の値がundefinedになります。
下記の通りに書いたのですが、何故undefinedになるのでしょうか?
<script>
function displayTable() {
var htmlTable = google.script.run.getTable_Area();
document.getElementById("createdTable").innerHTML = htmlTable;
}
</script>
function getTable_Area() {
return '<table>' +
省17
879(1): 2023/01/21(土)20:12 ID:tr5Udobt(2/6) AAS
>>878
パッと見だけど
displayTableはフロント側の関数だよね
getTable_Areaはgoogle.script.run経由で呼び出してるからgs(バックエンド側)の関数だよね
google.script.runはwithSuccessHandlerのコールバックでレスポンス受け取るから、変数htmlTableはundefinedになるんじゃね?
880(1): 2023/01/21(土)21:05 ID:EDO4fSiJ(1/5) AAS
>>879
>displayTableはフロント側の関数だよね
>getTable_Areaはgoogle.script.run経由で呼び出してるからgs(バックエンド側)の関数だよね
はい。それぞれフロントとバックエンド側になります。
withSuccessHandlerを以下の通りに使用し、実行したところundefinedは表示されなくなったのですが、表が表示されないということはcalculateArea()の書き方がいけないのでしょうか?
<script>
function calculateArea() {
var htmlTable = "";
google.script.run.withSuccessHandler(function(data) {
htmlTable = data;
省4
881(1): 2023/01/21(土)21:11 ID:tr5Udobt(3/6) AAS
>>880
こうしてみて
function calculateArea() {
google.script.run.withSuccessHandler(function(data) {
document.getElementById("createdTable").innerHTML = data;
}).getTable_Area();
}
882(1): 2023/01/21(土)22:20 ID:EDO4fSiJ(2/5) AAS
>>881
ありがとうございます!表が表示されるようになりました!
もし可能であれば、もう1点教えていただきたいのですが、
上記 function getTable_Area()には
'<td><input value=<?= getArea();?>></input></td>'
のようにgetArea()などの関数を表が作成される際に呼ばれるよにしています。
しかし、表示されたタブをみてみると
<input value="<?=" getarea();?="">
になっており、エスケープ処理?がされているみたいです。
実際にアプリを開発する際は、何か別の方法でinputの値に関数の戻り値を代入しているのでしょうか?
883(1): 2023/01/21(土)22:36 ID:tr5Udobt(4/6) AAS
>>882
そのgetAreaはどっちの関数?
フロント?バック?
884(1): 2023/01/21(土)22:50 ID:EDO4fSiJ(3/5) AAS
>>883
バック(gs)になります。
885(1): 2023/01/21(土)22:59 ID:tr5Udobt(5/6) AAS
>>884
これで良くない?
function getTable_Area() {
const a = new Date();
const b = getArea();
return '<table>' +
'<thead>' +
'<tr>' +
'<th>Result</th>' +
'</tr>' +
省13
886(1): 2023/01/21(土)23:07 ID:EDO4fSiJ(4/5) AAS
>>885
なるほど。そのようにすればよかったのですか。
ありがとうございます!大変勉強になりました!
887(1): 2023/01/21(土)23:20 ID:tr5Udobt(6/6) AAS
>>886
全く説明してなくてごめんね
テンプレートリテラル使うともっと簡潔に書ける
外部リンク:developer.mozilla.org
あと同期/非同期がわかるといいね
888: 2023/01/21(土)23:41 ID:EDO4fSiJ(5/5) AAS
>>887
いえいえ。重ね重ね、ありがとうございます!
テンプレートリテラルを勉強して使ってみようと思います。
またご推察の通り、同期の問題も発生しておりますので、それも合わせて勉強してみます。
889: 2023/01/22(日)09:05 ID:1NpPY/pK(1) AAS
ERB(埋め込み・Embedded RuBy)なら、HTML 内で、
<% 〜 %> でRubyのコード片を実行するだけ(出力はしない)。
<%= 〜 %> でRubyのコード片を実行して出力する
例えば、a.html.erb が以下なら、
<% ary = [ "<a>", "あ" ] %>
<% ary.each do |item| %>
<input type="text" value="<%= item %>">
<% end %>
a.html は、以下のように出力される
省2
890: 2023/01/25(水)19:23 ID:EJwoBEnK(1/2) AAS
test
891(1): 2023/01/25(水)19:23 ID:EJwoBEnK(2/2) AAS
やりたいこと:
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">
省2
892(1): 2023/01/26(木)03:32 ID:n/mKepPR(1) AAS
>>891
getUrlで取得されたURLにあるものって画像じゃないよね
画像じゃないものをimgタグにセットしても表示されないよ
URLにあるものを画像化するか
iframe使って表示させるか(未検証)
どっちかのアプローチじゃないかな
893: 2023/01/26(木)04:58 ID:p3aeborJ(1) AAS
>>892
わかりました。
ありがとうございます。
894(1): 2023/02/02(木)21:14 ID:d3AVgBUi(1) AAS
GAS愛好家のみなさん
ContactsAppからPeopleAPIへの移行状況はいかがですか?
勝手が違いすぎてよーわからん
公式すらあんまり情報ないしマトモな記事載せてるサイトもないですよね
895: 2023/02/03(金)12:45 ID:0b57qUmd(1) AAS
スプレッドシートについての質問をさせてください
条件付き書式で、フォントサイズを変更するにはどうしたらいいでしょうか
表で一定の値の数字以上はフォントサイズが大きくなる、という仕様にしたいです
896: 2023/02/05(日)16:08 ID:2ccsuJcO(1) AAS
>>894
どうぞ。
外部リンク:officeforest.org
897: 2023/02/15(水)16:03 ID:b8FtSvc2(1) AAS
GASじゃなくてスプレッドシートなのだけど、
検索窓閉じた時検索結果に跳ぶの避けられませんかね。
898(10): 2023/02/18(土)13:58 ID:W3nKwjDO(1/2) AAS
やりたいこと
スプレッドシートに沢山ある あ い う とかいう文字列を
i[あ.い.う...]
t[a.b.c...]
という配列使って一度に置換作業がしたい。
i[1]→t[1]みたいな感じで。
replafeとforの組み合わせでなんとかなるかな?と思ったのですが、リファレンス読む限りreplace(a,b)の置換のa部分に変数を用いることは出来ないようなので他の方法を探しています。
ご教授頂きたく。
899: 2023/02/18(土)18:58 ID:W3nKwjDO(2/2) AAS
>>898
自己解決。
というか諦めて別シートに呼び出した後substituteとxlookupの組み合わせで無理やり置換したのを表示させました。
900: 2023/02/19(日)14:19 ID:bukleA+Y(1) AAS
>>898
日立?
901(1): 2023/02/19(日)22:06 ID:sztA44Ir(1) AAS
>>898
spliceで置き換える
外部リンク:gray-code.com
902: 2023/02/20(月)02:05 ID:6OqVkYRD(1) AAS
>>901
ありがとうございます!spliceメソッド使ってみます。
その前に1つずつ検索かけるのに手古摺ってますが、なんとかやってみたいと思います。
903(1): 898 2023/02/20(月)16:04 ID:4jGYSd8p(1) AAS
駄目でした…
includesにしてもmatchにしても配列[ ]で指定するとうまく動いてくれません。
配列を作らずfor文で無理やりセルを置換させるという荒業で解決しましたが時間がかかり過ぎて実用的でなく。
やりたいこと
table[[あ],[か],[さ],[た]...]
before[あ][い]...
after[ア][イ]...
以上の配列があり、
tableに対しbefore[i]を総当りで検索し一致したらafter[i]に置き換える。
904(1): 2023/02/20(月)18:43 ID:czK6pNoa(1) AAS
>>903
やりたいことがいまいちわからん
こういうこと?
# ひらがなをカタカナに変換
table = [['あ','ア'], ['い','イ'], ['う','ウ'], ['え','エ'], ['お','オ'] ];
before = ['あ','い','う','え','お'];
after = before.map(b => table.find(a => b === a[0])[1]);
905: 898 2023/02/20(月)18:49 ID:83YdaF3i(1) AAS
ありがとうございます。配列の中身は適当です…。
表と配列2種類の3つの要素があって、表にある配列1の要素を見つけたら配列2に置き換えるということをしたかったのです。
ですがお陰様でなんとかなりました!
二次元配列をflat()で一次元にして、splice使いました。
その後再度2次元配列に戻して元の形に直しました。
906(1): 898 2023/02/21(火)00:26 ID:B3qxCQs3(1/3) AAS
>>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]){
省9
907(1): 2023/02/21(火)02:43 ID:6tAoYaOK(1/3) AAS
>>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使うなら
省1
908(1): 898 2023/02/21(火)08:58 ID:B3qxCQs3(2/3) AAS
>>907
そのarray[i][j]の[j]を入れるとindexOfにしてもincludesにしてもうちの環境?では何故かエラー出て読み込めなかったんですよ。(
確かcannot read properties of undefinedだった筈)
それ外すとエラーなく読んだので仕方なくflat入れた次第です。
因みに
arrayX=array[x]
arrayY=array[y]
みたいに入れ子しても駄目でした。
909: 898 2023/02/21(火)09:10 ID:B3qxCQs3(3/3) AAS
確認したらエラー全然違うし書いてること散々でした
訂正
出てたエラーは多分is not defined
下の入れ子は
arrayX=array[x]
arrayY=arrayX[y]
みたいにしても同じエラーだったかと。
910(1): 2023/02/21(火)23:07 ID:6tAoYaOK(2/3) AAS
>>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)]);
省15
911(1): 2023/02/21(火)23:08 ID:6tAoYaOK(3/3) AAS
あと上のmapは省略しすぎてわかりにくかったのでアロー関数と三項演算子をやめたらこうなる
const array2 = array.map(function(row) {
return row.map(function(col) {
if(before.includes(col)) {
return after[before.indexOf(col)];
}
else {
return col;
}
});
省1
912: 898 2023/02/22(水)11:50 ID:7vReBJfV(1) AAS
>>910-911
何度もありがとうございます。
仰るとおり2度目の添字は一切読み込んでくれないので…
>>911のmap参考にしながら勉強させていただきます。
とりあえず長くなってしまったのでこの辺りで。また不具合出てきたら改めて質問したいと思います。
ありがとうございました!
913: 2023/02/28(火)21:38 ID:8PRLUyLU(1) AAS
スプレッドシートの共有で閲覧権限を持っている人の
印刷は可能でファイルのダウンロードだけ禁止することは可能でしょうか?
914(1): 2023/03/01(水)10:13 ID:NPxLOyBL(1) AAS
共有アイテムのファイルにスターをつける方法を教えてください
宜しくお願いしますm(_ _)m
915: 2023/03/01(水)14:17 ID:csCK6+UB(1) AAS
sheetクラスを取得する方法ってgetSheetByNameとgetActiveSheetしかないよね?
getSheetBySheetIdがないのが謎なんだけどシートはシート名で管理するしかない?
916: 914 2023/03/12(日)00:26 ID:ZZBXPzbK(1) AAS
>>914
自己解決しました
917(1): 2023/03/24(金)19:19 ID:GCLzu5nr(1) AAS
Rangeオブジェクトから、セルアドレスの文字列を取得したい場合
Excelならr.Address()で相対参照や絶対参照を取得できますが
GASで同じようなことできるメソッドあります?
getA1Notation()だと相対アドレスでしか取得できないようで…
918(1): 2023/03/24(金)20:40 ID:h6PMjTMa(1) AAS
>>917
よく分かってないけどそれ意味あるの?
ただの文字列なんだから相対も絶対もないような
919(1): 2023/03/25(土)11:52 ID:TC3JXJ5y(1) AAS
>>918
例えば
A1のRangeオブジェクトから
$A$1という文字列を取得できないかなと
GASから条件付き書式を設定するのに使いたいです
なぜ使いたいかというと
複数人で編集してコピペを繰り返すと条件付き書式が破壊されてしまうので
それを上書きリセットするためです
逆に、条件付書式だけロックかけて切り取ったり貼り付けたり出来ない設定ができるならそれで十分なのですが…
920: 2023/03/25(土)17:53 ID:nYxwu6kr(1) AAS
>>919
>複数人で編集してコピペを繰り返すと条件付き書式が破壊されてしまうのでそれを上書きリセットするためです
通常の書式ならonEditで変更されたセルの書式を変更するだけでいいけど
条件付き書式をGAS上で扱ったことなかったから調べたけどちょっと面倒だね
そんでよくよく考えてみたらそもそもGAS使うならonEditで書式変更すればいいだけだから条件付き書式を使う必要がないと思った
921: 2023/04/04(火)12:37 ID:dAPefWGR(1) AAS
スプレッドシートにスクリプト作成して権限付与して動作するように設定したあと
そのスプレッドシートをコピーするとスクリプトもコピーされるようですが
スクリプトの権限やトリガーは設定しなおしが必要のようです。
イメージ的には、vba付のExcelをコピーして別ファイルとして保存して
毎月のデータを作成していく、みたいなことがしたいんですが
その辺コピーするだけで全部引き継がれるみたいな設定ないのでしょうか?
922: 2023/04/11(火)18:45 ID:u8YBlLPL(1) AAS
類似画像を判別できるようなライブラリとか公開されてるコードありますか?
検索するとpythonだとImageHashってライブラリがあるんだけどGASで同じようなことしたい
923: 2023/04/21(金)16:25 ID:vnxhj4My(1/2) AAS
ごめんgoogleスプレッドシートの質問スレがみつからずこちらで質問させてください。
シートのある列をユーザーごとの閲覧を制限かけたい
有効な方法ありますか?
924: 2023/04/21(金)16:53 ID:8VcMj5ya(1) AAS
閲覧の制限はファイル単位でしか出来ないでしょ
シート、セル(列/行)単位は編集の制限しか出来ない
925: 2023/04/21(金)17:40 ID:vnxhj4My(2/2) AAS
ありがとうございます。
確かに「表示」→「保護されている範囲」でできそうだったけど。やっぱりだめでした。
諦めて、もう一つリンクしたファイルのシート作ってそちらに閲覧されたくない列を追加します。
926(1): 2023/05/02(火)21:52 ID:39G20EoK(1) AAS
Googleカレンダーに予定を追加するプログラムを使ってるんだけど、「場所を追加」ちゃんと場所を追加したいです
以下詳細
普通に手作業でGoogleカレンダーに予定を追加するときは、「場所を追加」に場所の名前を入力すると候補が出てきて、そこから選ぶと、そこに間に合うためには何時に家を出ればいいかの通知が来たり、Android版のGoogleカレンダーだと予定の背景がその場所の写真になったりします。
で、GASで予定を追加するとき、場所を指定するためにGoogleマップのURLを使ってるんだけど、それだとURLが表示されるのみで、上記の通知とか背景写真とかが実行されません。
公式ドキュメントでも {location: 'Conference Room'}とされており、Googleマップ上の場所を使う気がなさそうです。
ちゃんとした「場所の追加」は、ウェブ上でマウスで操作しないとできないのでしょうか?
927(1): 2023/05/03(水)00:25 ID:2fvruydV(1) AAS
>>926
URLじゃなくてその場所の名前か住所、もしくは緯度経度を入れればいいんじゃないの?
928: 2023/05/03(水)03:09 ID:CT7gAj9T(1) AAS
>>927
それが名前や住所を入れても、その文字列が表示されるだけのようです
こんな感じ
画像リンク[jpg]:i.imgur.com
ブラウザかアプリで場所を選択した時には場所と認識されるのか、こう表示されます
画像リンク[jpg]:i.imgur.com
929: 2023/05/16(火)22:03 ID:9Kd/3stA(1) AAS
ゲッ!!(/||| ̄▽)y-ξ⌒◇ヾ( ̄  ̄;)ジュッ
930(1): 2023/07/08(土)12:42 ID:CwJ0Byq0(1) AAS
質問させてください
Googleフォームの送信時イベントで入力された値を取るために
イベントを作成しましたが、どうしてもイベントパラメータがnullになってしまいます
Webページにあるサンプルではeからいろいろな情報が取れるように書かれているのですが、nullとなってしまう理由がわからずに困っています
function myFunction(e) {
Logger.log("myFunction start")
Logger.log(e)
}
— ログ
12:27:10 お知らせ 実行開始
省3
931: 2023/07/08(土)17:00 ID:IeBiUrvH(1) AAS
>>930
トリガーの設定してる?
932(1): 2023/08/22(火)23:04 ID:+ZplHR9+(1) AAS
GASではなく、スプレッドシートの質問なのですが、もし適切なスレッドがあったら誘導お願いします
セルに例えば「130409.67」と入力し、
表示形式>数字>通貨(端数切り捨て)
に設定すると、小数点以下が切り捨てではなく四捨五入されてしまいます。
これはなにか私の使い方がおかしいのでしょうか?
また、他の方法でも良いので、内部的には小数点を保持しつつ、表示上だけ小数点以下を切り捨てる(非表示)する方法があれば教えてください。宜しくお願いします。
933: 2023/09/10(日)09:27 ID:yM7j2B0I(1) AAS
オ?ル
934: 2023/09/22(金)13:52 ID:dkRHHNCe(1) AAS
GTKは糞
935: 2023/09/24(日)09:36 ID:2YTVyUlC(1) AAS
君は失格
やり治せ
936: 2023/10/20(金)12:46 ID:/M3RKJCH(1) AAS
GAS抜きで
937(1): 2023/10/20(金)20:23 ID:c9EoYnQA(1) AAS
>>932
=trunc(3.14, 0)
で3と表示されるはず
938(1): 2023/10/31(火)16:30 ID:qmiHWWBC(1) AAS
>>937
ありがとうございます
それを入力したセル(A1)の隣に、
=A1×8
とすると、24と出るので、内部で小数点以下を保持してないようです
939: 898 2023/10/31(火)17:43 ID:F7pL/7Za(1) AAS
>>938
truncは切り捨てかな。
というかカスタム表示形式の # じゃ駄目なん?
940: 2024/03/10(日)15:35 ID:H28l+VF2(1/4) AAS
スプレッドシートについての質問です。
SBI証券のマイページからポートフォリオのcsvファイルをダウンロードすることができます。
GASにより、自動で、ポートフォリオの円グラフを作りたいのですが、スクリプトはコンテナバインドではなくスタンドアローンでないと駄目でしょうか?
毎日、csvファイルをダウンロードして、円グラフを描く予定なので、コンテナバインドだと駄目ですよね?
941: 2024/03/10(日)15:38 ID:H28l+VF2(2/4) AAS
でもスタンドアロンにすると、スプレッドシートを開くときに、ファイルのIDを指定しないと駄目ですよね。
このIDが毎日変わることになると思いますが、この部分をどうすれば楽ができるでしょうか?
942(1): 2024/03/10(日)15:55 ID:vw/rAwFk(1/2) AAS
なんでコンテナバインドじゃだめなの?
トリガーで1日1回実行すればいいんじゃないの
943(1): 2024/03/10(日)16:29 ID:H28l+VF2(3/4) AAS
>>942
自動でダウンロードして来るとかそういうことを想定していますか?
そういう技術はありませんので、手動でダウンロードしてきて、Google Driveにアップロードする。
これを毎日やろうと考えています。
そうするとファイル自体が毎日変わりますし、IDも変わってしまうのではないかと思います。
バインドを新しい他のファイルに引き継ぐことはできませんよね?
944(1): 2024/03/10(日)16:50 ID:vw/rAwFk(2/2) AAS
>>943
ファイルIDが変わってもファイルを保存するフォルダが固定なら
そのフォルダのファイル一覧を取得すればいいんでは?
945: 2024/03/10(日)17:01 ID:H28l+VF2(4/4) AAS
>>944
なるほど、ありがとうございました。
そういうことができるんですね。
ということは、スタンドアロンである固定したフォルダからファイルの一覧を取得する。
SBI証券からダウンロードしてきたcsvファイルは、その日の日付をファイル名とする。
ファイルの一覧からその日の日付のファイルをオープンして、円グラフを作成する。
ありがとうございました。
946(1): 2024/03/11(月)11:33 ID:Voh59fAx(1/2) AAS
csvファイルに、
'+7441000
というデータがあります。
これをSpreadsheetとしてインポートすると、セル上で
+7441000
省4
947: 2024/03/11(月)21:30 ID:Voh59fAx(2/2) AAS
>>946
なんとか解決しました。
948: 2024/04/04(木)12:51 ID:q67OTvc3(1) AAS
getUi().showModelessDialog()の挙動おかしくなった?
他をクリックしたら閉じるようになったし移動も出来なくなった
バグですか?
949: 2024/12/12(木)17:27 ID:/P1+mPAL(1) AAS
createTextFinderで正常に動いてたのにソース変更してないのに最近になって
TypeError: Cannot read properties of undefined (reading 'indexOf')と言うようになった
他の部分が悪いのか、切り分けるためcreateTextFinderだけ機能させるコードを書いてたけど同様のエラー
とりあえず別の手段で回避させたけどおま環?
950: 2024/12/13(金)13:21 ID:ouGUX1+B(1) AAS
だからjsは馬鹿にされるんだ
951: 01/05(日)10:08 ID:8kdOFrcZ(1) AAS
OneDriveの質問ここでok?
952: 01/05(日)10:17 ID:xU+8tKpK(1) AAS
gasってgoogleのサービス。onedriveはmicrosoftのサービスで違う
スクリプトからonedriveを操作したいとかじゃないよね?
スレチだけど一応聞いてみれば?誰か分かるかもね
953: 01/12(日)21:20 ID:EIvdvWG6(1) AAS
スプレッドシートさ、ExcelVBAでできる
とあるRangeからとあるRangeまでの範囲を指定して新たにRangeを作る、てのが用意されてないの地味に不便だよね
getRangeもoffsetも「座標~座標」の直接範囲指定がなくて軒並み「座標~行列数」しかないのがめんどくさい…そう思ってるの俺だけか?
A1形式の文字列をガッチャンコすれば出来るっちゃ出来るが、お前それでいいのか感がすごい
954: 01/16(木)13:26 ID:5fNIPSC6(1) AAS
スプレッドシートとDriveAPIについて質問です。
他のGoogleアカウントがオーナーとして持ってるスプレッドシートで、別アカウントを閲覧者として共有。
その別アカウント側でAPI設定し、そのAPIを使ってxlsx形式でExportすることは可能?
955: 01/16(木)19:10 ID:OQ3rw5hF(1) AAS
自分で試せよ。やりたいならやってみれば良いだろ
956(1): 01/16(木)19:13 ID:RFhmsTBB(1) AAS
過疎ってる上にスクリプト荒らしが跋扈し誰か来ても煽ってくるやつしかおりゃん
いまどきのプログラマーはみんなChatGPTかCopilotに質問投げてるよ
5ちゃんねるはおしまい!
957: 01/17(金)19:35 ID:S3TtCEi5(1/3) AAS
みんなぁ……どこ逝っちゃったんだブー…………
958: 01/17(金)19:39 ID:S3TtCEi5(2/3) AAS
なんでこの掲示板まだ運営してるの~?
959: 01/17(金)19:41 ID:S3TtCEi5(3/3) AAS
AA省
960: 02/12(水)05:27 ID:EChoPnIL(1) AAS
アンドロイドのGoogleスプレッドシートのセルに日付を入れたら自動で○/○(月)と表示されるようにしたい。
どうかよろしくお願いいたします。
961: 02/12(水)07:18 ID:vZOAXNAs(1/2) AAS
セルの書式設定でカスタム日付からできるけど、日付の後に半角でも良いからスペース入れないと2/12 ?とはならないね
細かい解説はぐぐってくれ
962: 02/12(水)07:20 ID:vZOAXNAs(2/2) AAS
文字化けした 2/12 (水) ね
頭に0を入れるか入れないかも決められるみたい
963: 02/12(水)08:21 ID:AFDgFLET(1) AAS
スレ違い
964: 02/12(水)10:54 ID:WpGOIYcm(1) AAS
これが博士か
965: 02/20(木)20:37 ID:74VDrAOZ(1) AAS
閑古鳥すらいなくなった糞過疎掲示板
それが5ちゃんねる
966: 02/28(金)17:03 ID:kF3VgEHE(1) AAS
もう2人くらいしかいない
967: 03/02(日)03:32 ID:SuUkbROl(1) AAS
たまに覗いてる
そういやContactsApp死んだな
People APIダルい
968: 06/04(水)20:18 ID:BeLNgZJK(1) AAS
>>956
そうだよ便乗w
過疎過疎の地に足跡を刻むかw
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.503s*