表題の件、お世話になります。
SpreadSheetのシート名を参照し、それぞれのシート名に対応するDocumentを探したいと考えています。!
1function test() { 2 var sh = SpreadsheetApp.getActiveSheet(); 3 var FolderID = "*********" 4 var targetFolder = DriveApp.getFolderById(FolderID); 5 6 var ash = SpreadsheetApp.getActiveSpreadsheet().getSheets(); 7 8 if (ash.length >= 1) { 9 for(var i = 0;i < ash.length; i++){ 10 var ss_name = ash[i].getName(); 11 Logger.log(ss_name); 12 13 Logger.log(targetFolder.getFilesByName("日程通知件名_" + ss_name).hasNext()); 14 Logger.log(targetFolder.getFilesByName("前日リマインド件名_" + ss_name).hasNext()); 15 16 } 17 } 18}
日程通知件名_ + ss_nameからはtrueが返りますが、前日リマインド件名_ + ss_nameからはfalseが返ってきます。Documentファイル名は自動生成させているので、ファイル名に誤りはないと考えていますが、ファイル名がすべて英語の場合は問題なく動いていたので、日本語の文字列によって問題が発生するのか、と考えています。考えられる原因はどこにありますでしょうか?
この後、Documentの内容を取得する流れを書いていますが、名前での検索が厳しいようでしたら、IDを直接SpreadSheetに書き込んで参照させるやり方も検討しています。
どうぞよろしくお願いします。
[追記]
今しがた結果が変わっており、EXAMPLEの前日リマインド件名がfalseになってしまいました…
[追記]
スクリーンショットは日程通知文面となっていますが、正しくは日程通知件名です。
スクショが分かれてますけど、これは全部同じフォルダに入っていますか?サブフォルダに分かれていたりしませんか?
ソースは「日程通知件名」なのにスクショは「日程通知文面」なので、この質問のどこかに嘘が紛れているのでしょう。
そういう質問は再現性がないので、検証できません。
お二方、回答ありがとうございます。
>>papinianusさん
分かれたスクリーンショットですが、すべて同じフォルダに入っています。
>>macaron_xxxさん
すみません、スクショの撮り間違いでした。最終的に6つのファイルを検索するつもりでした。
ですので、ログ実行時点の正確なソースとフォルダ・ファイル構成を提示してください。
正しくは~と言っても大概の質問は勘違いや見間違いなどです。
>> macaron_xxxさん
大変恐縮ですが、当該ファイルはすでに修正し、ファイル構成を含むソースを大きく改変したため、投稿当時の再現はできません。
次回以降、ファイルを別途保存するか、回答を締めるよう注意します。ありがとうございました。
