画面上ではこの操作で実現できることをコードで書いてみました
編集→特殊貼付け→値のみ貼り付け
たとえば
A1に「=B1+C1」などの数式が入っている場合
コード.gsを実行すると
A1の数式は消えてB1+C1の結果の値のみが貼り付けられます
A列の数式を残しておきたい場合は
var target = sheet.getRange('A:A');を
var target = sheet.getRange('D:D');
などとして別の列に値だけ貼り付けることもできます
コード.gs
function copy_contentsOnly(){ var sheet = SpreadsheetApp.getActiveSheet() var range = sheet.getRange('A:A'); var target = sheet.getRange('A:A'); range.copyTo(target, {contentsOnly:true}); } |
意訳この機能がやること シートを取得する コピー元を指定する コピー先を指定する コピー元からコピー先に値だけ貼り付ける |
参考
Class Range / copyTo(destination, options)
https://developers.google.com/apps-script/reference/spreadsheet/range