
Googleフォームで作ったスプレッドシートの最後の行のデータを読み込んで、ドキュメントの文字列を置換させようとしています。getRange(rowSheet,2)で、メソッド getRange(number,number) が見つかりません。のエラーになります。試しに、getRange("B3")と書くと動作します。
この"B3"を変数"rowSheet"を使って表記する方法を教えてください。
------------ 以下が実際のスクリプトです。---------------
function insertName(){
var toAite_title = 'HKPへお申込みありがとうございます';
/* スプレッドシートのシートを取得と準備 */
// var mySheet=SpreadsheetApp.getActiveSheet(); //シートを取得
var mySheet = SpreadsheetApp.openById("xxxxxxx"); //シートを取得
var rowSheet = mySheet.getDataRange().getLastRow(); //シートの使用範囲のうち最終行を取得
/* ドキュメント「メール本文テスト」を取得する */
var docTest = DocumentApp.openById("xxxxx"); //ドキュメントをIDで取得
var strDoc = docTest.getBody().getText(); //ドキュメントの内容を取得
var Onamae=mySheet.getRange(rowSheet,2).getValue(); //名前
var Nickname = mySheet.getRange(rowSheet,3).getValue(); //ニックネーム
var MailAdd = mySheet.getRange(rowSheet,4).getValue(); //アドレス
var toAite_content=strDoc.replace(/{お名前}/,Onamae).replace(/{N名前}/,Nickname).replace(/{メールアドレス}/,MailAdd); //社名、姓名を置換
GmailApp.sendEmail(MailAdd, toAite_title, toAite_content);
}
No.2ベストアンサー
- 回答日時:
#1です
>Spreadsheetクラスから、どうやってSheetクラスに変更するのか判りません。
#1にも書きましたが、全く利用したことがないのでドキュメントの情報しかわかりませんが…
#1の提示したドキュメントの下方に各メソッドの例がたくさん載っています。
SpreadsheetクラスのオブジェクトからSheetクラスのオブジェクトを取得するには、getSheetByNameメソッドでシート名を指定するか、getSheets()[n]でシート番号で指定するなどの方法でできそうな雰囲気ですけれど?
※ #1のリンクページの下方の説明(と例)をご覧になってみてください。
No.1
- 回答日時:
こんにちは
Google Apps Scriptは知りませんので、ドキュメントを見てみただけですが…
>メソッド getRange(number,number) が見つかりません。のエラーになります。
>試しに、getRange("B3")と書くと動作します。
SpreadsheetクラスのgetRangeメソッドの引数は、
"the range to return, as specified in A1 notation or R1C1 notation"
となっているようですので、「行、列」形式の引数は認めていないようです。
それなので、エラーになるのでは?
https://developers.google.com/apps-script/refere …
一方で、SheetクラスのgetRangeメソッドは、「行、列」形式の指定のみとなっているようなので、こちらを利用なさればよろしいのではないでしょうか?
https://developers.google.com/apps-script/refere …
アドバイスいただきありがとうございます。
Spreadsheetクラスから、どうやってSheetクラスに変更するのか判りません。
まったく初心者ですので具体的な設定をいただけると幸いです。
どうぞよろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript gasについて 1 2022/05/31 21:51
- その他(プログラミング・Web制作) google formsを使ったタスク依頼フォーム作成におけるご相談 1 2023/06/22 15:55
- JavaScript ソースコードのいじる場所が分かりません。 1 2022/12/23 02:06
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- オープンソース Coinmarketcap api 1 2022/05/30 15:47
- JavaScript Google reCAPTCHAについて 1 2023/02/22 14:37
- JavaScript javascriptでテーブルに追加した項目のid追加してローカルストレージを操作したい 5 2023/01/01 15:52
- JavaScript EasyUIのSubGrid(jquery)におけるObjectに入れた連想配列について 1 2022/05/02 11:21
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
abstract と static を一緒に付...
-
コマンドライン引数のチェック
-
レコード件数の表示
-
別クラスのmainメソッドの実行
-
Java初級 引数に適用できません
-
String.containsの反対機能はあ...
-
KeyListenerをButtonコンポーネ...
-
JDialog でコンパイルエラーに...
-
return new使用時
-
StringBufferからStringへキャ...
-
Javaのランダムについて!
-
アプレットのinitは、なせ"publ...
-
superについて教えて下さい
-
説明文書でのメソッド・変数の...
-
EclipseのVE(Visual Editor)に...
-
クラスを使用した問題
-
メソッド宣言の戻り値の型にク...
-
JOptionPane.showOptionDialog...
-
JDBC Connectionを開放し続ける...
-
親の親のメソッドを呼ぶには?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Java初級 引数に適用できません
-
String.containsの反対機能はあ...
-
abstract と static を一緒に付...
-
レコード件数の表示
-
コマンドライン引数のチェック
-
StringBufferからStringへキャ...
-
別クラスのmainメソッドの実行
-
Google Apps Script で getRang...
-
JUnitのテストメソッドごとのメ...
-
なぜprotected overrideなのか
-
C言語での文字列より値を抜き出す
-
Java初心者です、エラーの意味...
-
メソッド宣言の戻り値の型にク...
-
シェルスクリプトからのJavaメ...
-
YYYYMMDD書式の日付に対する適...
-
メソッドの引数に指定されてい...
-
System.out.print
-
クラスを作るとメソッドの数が...
-
Strutsでチェックボックスの値...
-
public static void main (Stri...
おすすめ情報