前提・実現したいこと
Google スプレッドシートの修了者リストに従い, Google スライドで作った修了証テンプレートの氏名や所属テキストをリプレースして, 各個人宛の修了証をPDF で作る 。
ここに質問の内容を詳しく書いてください。
シェイプのGet text as Strings での値とSEARCH pattern が合致しない。
スライドのテキストシェイプに Get Text、 Set text で代入したストリングをGet text as Strings で取り出すと、ストリングの最後に不明なキャラ(スペースではない)ついてしまう。リプレースされたPresentationには入っていない。
該当のソースコード
GAS
1コード
function matchNGFunction() {
//Googleスライドから修了書コピーを取得
var passdocID = '****ID';
var passdoc = SlidesApp.openById(passdocID);
var passSlide = passdoc.getSlides()[0];
var passShapes = passSlide.getShapes();
//受講票のサーチパターンの初期値定義
var nameSP = '氏名 :{氏名}';
//受講票のリプレースパターンの定義
var nameRP = '氏名 :山田 太郎様';
//データ作成処理
//開始-臨時:強制的にサーチパターンに
passShapes[1].getText().setText( nameSP );
//終了-臨時:強制的にサーチパターンに
var NowPattern = passShapes[1].getText().asString();
if(NowPattern == nameSP){
passShapes[1].getText().setText( nameRP );
}
//Slideをセーブ&クローズする
passdoc.saveAndClose();
//Slideを再度オープン&GetSlides
passdoc = SlidesApp.openById(passdocID);
passSlide = passdoc.getSlides()[0];
passShapes = passSlide.getShapes();
//リプレースしたドキュメントをPDFにする、ファイル名を付ける
var pdf = DriveApp.getFileById( passdocID ).getAs( MimeType.PDF).setName('山田 太郎様修了書.pdf'); //OK
//PDF修了書作成@修了書格納フォルダ
const folderID = '****ID';
const folder = DriveApp.getFolderById(folderID); //フォルダIDでフォルダをGET
folder.createFile(pdf); //ファイルを作る
}
### 試したこと デバッグで変数の値を確認。デバッガーのスクリーンコピーを載せます(説明も書いておきました)。 ![イメージ説明](a549a7ecff1ae7ffa3e8d3fab35bc806.png) ### 補足情報(FW/ツールのバージョンなど) 1キャラ入るものなのでしょうか?キャラの正体が分からず困っています。 よろしく回答お願いいたします。
あなたの回答
tips
プレビュー