お客様からの振込入金があったことが、
銀行からメールで送られてきます。
これにあたり、以下の2つを自動化したいと考えています。
1.メール本文がスプレッドシートのF列にコピーされる
2.そのすぐ左のセルであるE列に、このメール本文から振込金額だけを取得するために、以下の数式を入れる。
=regexextract(REGEXEXTRACT(F1,"金額."),"\d.")
2番で行き詰まっています。行き詰まっている点は、
数式の中のこの部分です → \d
gasでは、下記のようにコードを書いたのですが、
sheet.getRange(1+index,3).setFormula("=regexextract(REGEXEXTRACT(F"+ targetRow +',"金額.*"),"\d.*")');
コードを実行してみると、バックスラッシュが消えてしまいます。
バックスラッシュもそのまま、数式の一部としてセル内に反映させる方法について、お教え下さい。
コードのすべては、下記の通りです。
function set_formula_regex(){ /* スプレッドシート情報取得 */ var ss = SpreadsheetApp.openById(SpreadsheetApp.getActiveSpreadsheet().getId()); var sheet = ss.getSheetByName("info入金"); //最終行取得 const columnA = sheet.getRange('a:a').getValues(); const LastRow = columnA.filter(String).length; var data = sheet.getRange(2,1, LastRow, 4).getValues(); data.forEach(function(value, index){//B列空白の場合、regex数式をはりつける if(!value[1]){ var targetRow = index + 1 sheet.getRange(1+index,3).setFormula("=regexextract(REGEXEXTRACT(F"+ targetRow +',"金額.*"),"\d.*")'); } }) }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/26 06:26