![](/img/trans.png)
[英]Pipedrive API GET request setValues of array in Google Sheet not working
[英]Google Sheet Script Editor - setValues for array
我正在嘗試使用 Google 工作表腳本中的 setValues 用新值替換舊值。
數據在下面的鏈接...
https://docs.google.com/spreadsheets/d/1pSUVkxM9FhSNgizedHbY2MnYGTnC2iiYLfrWsoPmDks/edit?usp=sharing
我基本上是在嘗試刪除“跟蹤器”列下的前 14 個字符和后 12 個字符
下面是我試過的代碼..
function URLReplacement() {
var ss = SpreadsheetApp.getActive().getSheetByName("transformer");
var rng = ss.getRange("G:G");
var data = rng.getValues();
for (var items in data)
{
var newer = data[items][0].substring(14)
// Turn these strings into an array
var newerr = newer.split(" ")
// Turn this into 2 dimensional array to use setValues
ss.getRange("G:G").setValues([newerr])
Logger.log([newer]);
}
}
但是現在,我在 setValues 語句中遇到錯誤說我在那里設置的范圍與數據不匹配
我在這里做錯了什么..?
任何人都可以向我提供建議/建議嗎?
IMAGE_SUFFIX_"http://google.com"<xxxnouse>"
為http://google.com
。IMAGE_SUFFIX_"http://google.com"<xxxnouse>"
的格式是不變的。 如果我的理解是正確的,這個修改怎么樣? 您錯誤的原因是[newer]
不是用於使用setValues()
二維數組。 如果刪除了此錯誤,則通過覆蓋空值來刪除標頭。 所以我想修改如下。
getLastRow()
,它檢索的數據大小可以比 "G:G" 檢索的數據大小減少。 由此,可以降低工藝成本。getRange(2, 7, ss.getLastRow(), 1)
不檢索標頭。IMAGE_SUFFIX_"http://google.com"<xxxnouse>"
的格式IMAGE_SUFFIX_"http://google.com"<xxxnouse>"
, split()
用於解析這個值。setValues()
放置。 由此,還可以降低工藝成本。function URLReplacement() {
var ss = SpreadsheetApp.getActive().getSheetByName("transformer");
var rng = ss.getRange(2, 7, ss.getLastRow(), 1); // Modified
var data = rng.getValues();
var convertedData = data.map(function(e) {return e[0] ? [e[0].split('"')[1]] : e}); // Added
rng.setValues(convertedData); // Added
}
如果這不是您想要的結果,我深表歉意。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.