强制单元格被解释为纯文本?

时间:2016-07-18 04:04:59

标签: google-apps-script google-sheets

以下示例代码被解释为Date格式化的单元格,这不是我的意图。它应该是纯文本。在clearFormat()上拨打Range也无济于事。

function myFunction() {
  SpreadsheetApp.getActiveSheet().getRange(1, 1).setValue("11-2");
}

2 个答案:

答案 0 :(得分:2)

根据此blog,您可以设置单个单元格的格式,从特定单元格或整个电子表格开始的整列。您可以在Google表格support page上找到有关数字格式的其他资源。

@echo off

for /f %%x in ('wmic path win32_utctime get /format:list ^| findstr "="') do set %%x
set mydate=%Year%%Month%%Day%

ping 127.0.0.1 -n 20 -w 60000 > nul

RENAME Performance_Report.csv Performance_Report_%mydate%.csv

del ftpcmd.dat

echo user username>> ftpcmd.dat
echo password>> ftpcmd.dat
echo BINARY>> ftpcmd.dat
echo put D:\Upload\Performance_Report_%mydate%.csv>> ftpcmd.dat
echo quit>> ftpcmd.dat
ftp -n -s:ftpcmd.dat 123.45.6.78>>PerformanceLog.txt
del ftpcmd.dat

MOVE "Performance_Report_%mydate%.csv" "D:\Upload\Performance_Archive\"

同样来自此google forum,您可以使用 // Use these first two lines for all four examples var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; // Single cell var cell = sheet.getRange("B2"); // Plain text cell.setNumberFormat("@"); 将单元格格式化为纯文本。

检查以下链接:

  

另一个答案是,将格式设置为'纯文本'在javascript中,   不起作用。但是,这样做:

range.setNumberFormat('@STRING@');
     

因此,以编程方式格式化文本的神奇价值是' @STRING @'!

希望这有帮助!

答案 1 :(得分:0)

当电子表格解析器首先遇到它时,它看起来像一个数字,因此它作为数字存储在它的系统中。

强制解析器接受任何文本作为文本的标准方法是使用撇号预先输入输入'

所以你的脚本变成了:

  

function myFunction(){SpreadsheetApp.getActiveSheet()。getRange(1,   1).setValue("' 11-2&#34); }