【问题标题】:Stop a '+' and other symbols from generating a formula with Google Sheets API阻止“+”和其他符号使用 Google Sheets API 生成公式
【发布时间】:2020-12-17 18:57:46
【问题描述】:

这些单元格文本= thinking+ thinking=+ thinking 显示错误。 我找到了这些解决方法:

  1. + 之前输入一个撇号' 作为第一个字符。
  2. 以字符串公式形式输入内容,例如="+5 blah"

但是,我需要使用 Google Sheets API 来执行此操作。我需要保持单元格的所有内容不变。 有可能吗?

【问题讨论】:

  • 一种尝试是在导入之前将电子表格单元格格式化为 Text
  • 这是我首先想到的。但是我找不到这个命令。
  • ................................见下文

标签: google-sheets google-sheets-formula google-sheets-api


【解决方案1】:

格式 > 数字 > 纯文本

【讨论】:

  • 我的问题是如何使用 Google Sheets API 做到这一点。
  • 让这个问题保持打开状态。
  • 让我们删除垃圾答案和 cmets。
【解决方案2】:

如果您从脚本本身获取数据,例如,从 csv 导入,您可以在开头附加一个单引号以按原样显示。

function forceString() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var txt = `="THINKING"`;
  sheet.getActiveCell().setValue(`'`+txt);
}

【讨论】:

  • 如果数据也有"'怎么办?这就是为什么我需要保持单元格文本不变。
  • 我编辑了我的答案以使用反引号作为 txt 变量的分隔符,以便您可以使用 "'
【解决方案3】:

valueInputOption='RAW' 解决了这个问题。

第一个插入文本不变,第二个插入公式:

api.spreadsheets().values().update(
    spreadsheetId=ssId, range='A1', body={'values': text},
    valueInputOption='RAW').execute()

api.spreadsheets().values().update(
    spreadsheetId=ssId, range='B1', body={'values': [[formula]]},
    valueInputOption='USER_ENTERED').execute()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-02-28
    • 2018-01-21
    • 1970-01-01
    • 2020-11-24
    • 1970-01-01
    • 2013-01-20
    • 2015-10-29
    • 2016-10-13
    相关资源
    最近更新 更多