google 电子表格脚本在读取单元格后将逗号更改为句号?
google spreadsheet script changes comma to full-stop upon reading from a cell?
所以,我正在尝试从 Google 电子表格脚本中的单元格中读取数据,但有些东西不适合我。我做了一个快速测试函数,它从单元格中获取数据,将其转换为字符串并 returns 结果,如下所示:
function TEST(str)
{
return str.toString();
}
然后我做了两个测试电池:
A1 with "17"
A2 with "135,136"
A3 with "1,11,29,43,68,74,109,122"
然后我调用了我的函数,我对结果感到困惑
TEST(A1) returns "17"
TEST(A2) returns "135.136"
TEST(A3) returns "1,11,29,43,68,74,109,122"
所以似乎如果只有一个逗号,它就会变成句号,但如果有多个 none,它们就会被替换。这是怎么回事,我如何才能 100% 确定它不会以任何方式更改的情况下以字符串形式从单元格中读取数据?
问题:
- 有些地方使用
,
作为小数点分隔符。因此,135,136
是一个有效数字 (=135.136
)。但是,1,11,29,43,68,74,109,122
不是。默认情况下,有效数字与单元格右侧对齐(清除单元格格式以供见证)。
解决方案:
- 如果您要将
,
用作逗号而不是小数分隔符,请正确设置您的语言环境或
- 输入数字作为文本。在每个单元格中输入数据之前使用
'
。 '135,136
或
- 以文本形式发送输入。
=TEST(TO_TEXT(A1))
或
- 改用
range#getDisplayValues()
。
存储此数据的 A 列,应更改其格式,这将解决问题。
Select一栏 --> 格式 --> 编号 -- 纯文本。更改格式将达到目的。
希望对您有所帮助!
所以,我正在尝试从 Google 电子表格脚本中的单元格中读取数据,但有些东西不适合我。我做了一个快速测试函数,它从单元格中获取数据,将其转换为字符串并 returns 结果,如下所示:
function TEST(str)
{
return str.toString();
}
然后我做了两个测试电池:
A1 with "17"
A2 with "135,136"
A3 with "1,11,29,43,68,74,109,122"
然后我调用了我的函数,我对结果感到困惑
TEST(A1) returns "17"
TEST(A2) returns "135.136"
TEST(A3) returns "1,11,29,43,68,74,109,122"
所以似乎如果只有一个逗号,它就会变成句号,但如果有多个 none,它们就会被替换。这是怎么回事,我如何才能 100% 确定它不会以任何方式更改的情况下以字符串形式从单元格中读取数据?
问题:
- 有些地方使用
,
作为小数点分隔符。因此,135,136
是一个有效数字 (=135.136
)。但是,1,11,29,43,68,74,109,122
不是。默认情况下,有效数字与单元格右侧对齐(清除单元格格式以供见证)。
解决方案:
- 如果您要将
,
用作逗号而不是小数分隔符,请正确设置您的语言环境或 - 输入数字作为文本。在每个单元格中输入数据之前使用
'
。'135,136
或 - 以文本形式发送输入。
=TEST(TO_TEXT(A1))
或 - 改用
range#getDisplayValues()
。
存储此数据的 A 列,应更改其格式,这将解决问题。 Select一栏 --> 格式 --> 编号 -- 纯文本。更改格式将达到目的。
希望对您有所帮助!