簡體   English   中英

替換 Google Sheet 中函數中的文本(帶腳本)

[英]Replace text in a function in Google Sheet (with script)

我正在嘗試替換工作表中的字符串。 它適用於我所有的文本值,但我的函數有問題。

我有導入的電話號碼,但不幸的是,我在它們前面放置了一個=+

所以這些值不是 555-8181,而是 =+555-8181。

例如,當我嘗試使用 Replace 時,它​​不起作用,可能是因為這些值存儲為函數而不是字符串,但我可能是錯的。

關於該怎么做的任何提示?

我嘗試過的示例:

function RemoveErrorInPhonenumber() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("SheetWithNumbers");
  var range = sheet.getRange("Z:AG");
  var rngA = range.getValues();
  for(var i=1;i<rngA.length;i++)
  {
    rngA[i][0]=rngA[i][0].toString().replace("+", "");

  }
  range.setValues(rngA);
};

替換range.getValues(); 通過range.getFormulas();

然后執行

rngA[i][0]=rngA[i][0].toString().replace("+", "").replace("=", "");

還有兩個建議:

  • 如果要遍歷所有列 Z:AG,則需要創建兩個嵌套的for loops
for(var i=1;i<rngA.length;i++)  {
  for(var j=1;j<rngA.length;j++)  {
    rngA[i][j]=...
  }
}
  • 不要遍歷整個范圍Z:AG - 這會使您的代碼非常慢。 相反,循環直到包含行的最后一個數據:

var range = sheet.getRange("Z1:AG"+sheet.getLastRow());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM