我有一個簡單的腳本設置,使用基於腳本的VLookup基於Google表單條目發送電子郵件以獲取聯繫人電子郵件。在某些情況下,Google表單會將輸入到表單字段的較長數字轉換爲科學記數法。我一直使用的解決方法是在數字前輸入一個撇號 - 出於某種原因,這使得單元格格式化爲明文。我想找到一個不需要額外步驟的解決方案。如何防止Google表單將表單輸入轉換爲科學記數法格式
該工作表具有帶單一字段eGC的表單。 eGCs字段可以包含任意字母和數字的組合,可以是多行字符串。該腳本通過電子郵件正文中的eGCs字段條目向用戶onFormSubmit發送電子郵件。當我嘗試提交一個只有數字的非常長的字符串並將表單條目變量轉換爲科學記數法時,會出現問題。
我需要用戶在eGCs字段中輸入的任何信息都顯示爲正確,因爲它們都在回覆1表單和發送電子郵件的正文中輸入。下面是代碼:
function onFormSubmit(e) {
var eGCs = e.values[1];
var email = Session.getActiveUser().getEmail();
//Replace the Google Sheets formatted line breaks with HTML line breaks so they display properly in the email:
eGCs = eGCs.replace(/\n/g, '<br>');
//Send the email:
var subject = "This is only a test";
var body = eGCs;
MailApp.sendEmail(email, subject, body, {htmlBody: body})
return
}
如果我提交
6110523527643880
...到形式,數量更改爲科學記數法格式,並顯示爲6.11052E+15
都在紙張上,並在電子郵件中已發送。如果我提交多行字符串,如:
6110523527643880
6110523527643880
6110523527643880
...那麼腳本工作正常,(因爲谷歌不認爲這是一個數更多的可能)的形式字段項不能轉換。我需要它與輸入的內容完全一樣,無論表單條目是單行還是多行。
這是我的example sheet/script/form。它應該是公開的,所以請隨時測試它。
它是表單還是電子表格正在轉換它?您是否嘗試將格式更改爲電子表格? –
嗨斯賓塞 - 我不確定。這個人正在處理的問題是相同的,如果這有幫助:https://productforums.google.com/forum/m/#!msg/docs/dMIAKVtuKW0/4P6w5KzeIu0J 我的懷疑是,在這個過程中的某個地方谷歌將單元格更改爲「自動」格式而不是「純文本」。我在電子表格中將整列設置爲「純文本」格式,但這似乎並不重要。我試着用這些評論中的某個人提出的腳本,但仍然沒有運氣。 – cwg83
我創建了一個虛擬工作表,以便您可以親自看到它的實際運行情況。將它添加到頂部的原始帖子中。 – cwg83