将 Google Sheets 中的日期格式化到 Webapp

将 google sheets 中的日期格式化到 webapp

本文旨在解决从 Google Sheets 中提取的日期数据在 Webapp 中显示格式不正确的问题。通过 Utilities.formatDate 函数或 getDisplayValue 方法,可以轻松地将日期格式化为所需的 “dd MMMM yyyy” 格式。此外,还介绍了使用 getValues 方法批量获取数据以提高脚本效率的最佳实践。

格式化 Google Sheets 日期到 Webapp 的两种方法

在使用 Google Apps Script 构建 Webapp 时,从 Google Sheets 获取的日期数据可能不会以你期望的格式显示。例如,你可能希望日期显示为 “dd MMMM yyyy”,但默认情况下,它可能显示为其他格式。以下介绍两种常用的方法来解决这个问题:

1. 使用 Utilities.formatDate 函数

Utilities.formatDate 函数可以将日期对象格式化为字符串,允许你指定所需的日期格式。

示例代码:

function submitDT(obj){  var ss = SpreadsheetApp.openById("google sheet url");  var sheet = ss.getSheetByName("mysheet");  var  flag  =  1 ;  var lr = sheet.getLastRow();      for(var i = 1;i <= lr;i++){  var vid = sheet.getRange(i, 2).getValue();      if(vid ==obj){      flag = 0;  var b1 = sheet.getRange(i, 1).getValue();        // 格式化日期  var b3 = sheet.getRange(i, 3).getValue();  if (b3 instanceof Date) {    b3 = Utilities.formatDate(b3, Session.getScriptTimeZone(), "dd MMMM yyyy");  }  var b4 = sheet.getRange(i, 4).getValue();  var b5 = sheet.getRange(i, 5).getValue();  var b6 = sheet.getRange(i, 6).getValue();  var b7 = sheet.getRange(i, 7).getValue();  // 格式化日期  var b8 = sheet.getRange(i, 8).getValue();  if (b8 instanceof Date) {    b8 = Utilities.formatDate(b8, Session.getScriptTimeZone(), "dd MMMM yyyy");  }  var data ="
Transaction Information.
Tracking No.:"+obj+"
Transaction Title"+b1+"
Date Accepted by Focal:"+b3+"
Name of Establishment:"+b4+"
Address:"+b5+"
Status:"+b6+"
Claimed by:"+b7+"
Date Claimed:"+b8+"
"; return data; } } if(flag==1){ var data ="Transaction not found. For other concerns, please contact us at **********"; return data; } };}

代码解释:

Utilities.formatDate(date, timeZone, format): 这个函数接受三个参数:date: 要格式化的日期对象。timeZone: 时区字符串。 Session.getScriptTimeZone() 返回脚本的时区。format: 日期格式字符串。 “dd MMMM yyyy” 表示日期格式为 “日 月 年”,其中 “dd” 是两位数的日,”MMMM” 是完整的月份名称,”yyyy” 是四位数的年份。if (b3 instanceof Date): 确保 b3 是一个 Date 对象,然后再进行格式化。

注意事项:

确保你的脚本具有正确的时区设置,以便日期格式化正确。Utilities.formatDate 函数返回的是字符串,因此你需要在使用它之前确保变量是 Date 对象。

2. 使用 getDisplayValue 方法

getDisplayValue 方法返回单元格中显示的字符串值,而不是实际的日期对象。如果 Google Sheets 中显示的日期格式与你想要的格式相同,则可以使用此方法。

示例代码:

function submitDT(obj){  var ss = SpreadsheetApp.openById("google sheet url");  var sheet = ss.getSheetByName("mysheet");  var  flag  =  1 ;  var lr = sheet.getLastRow();      for(var i = 1;i <= lr;i++){  var vid = sheet.getRange(i, 2).getValue();      if(vid ==obj){      flag = 0;  var b1 = sheet.getRange(i, 1).getValue();        // 获取显示值  var b3 = sheet.getRange(i, 3).getDisplayValue();  var b4 = sheet.getRange(i, 4).getValue();  var b5 = sheet.getRange(i, 5).getValue();  var b6 = sheet.getRange(i, 6).getValue();  var b7 = sheet.getRange(i, 7).getValue();  // 获取显示值  var b8 = sheet.getRange(i, 8).getDisplayValue();  var data ="
Transaction Information.
Tracking No.:"+obj+"
Transaction Title"+b1+"
Date Accepted by Focal:"+b3+"
Name of Establishment:"+b4+"
Address:"+b5+"
Status:"+b6+"
Claimed by:"+b7+"
Date Claimed:"+b8+"
"; return data; } } if(flag==1){ var data ="Transaction not found. For other concerns, please contact us at **********"; return data; } };}

代码解释:

sheet.getRange(i, 3).getDisplayValue(): 获取单元格 (i, 3) 中显示的字符串值。

注意事项:

getDisplayValue 方法返回的是字符串,因此你不需要进行额外的格式化。如果 Google Sheets 中显示的日期格式不正确,则此方法将无法解决问题。

提高脚本效率:使用 getValues 批量获取数据

为了提高脚本的效率,建议使用 getValues 方法批量获取数据,而不是一次获取一个单元格的值。

示例代码:

function submitDT(obj){  var ss = SpreadsheetApp.openById("google sheet url");  var sheet = ss.getSheetByName("mysheet");  var lr = sheet.getLastRow();  // 获取所有数据  var dataRange = sheet.getRange(1, 1, lr, 8);  var data = dataRange.getValues();  for(var i = 0; i < lr; i++){    var vid = data[i][1]; // Column B (index 1)    if(vid == obj){      var b1 = data[i][0]; // Column A (index 0)      var b3 = data[i][2]; // Column C (index 2)      if (b3 instanceof Date) {        b3 = Utilities.formatDate(b3, Session.getScriptTimeZone(), "dd MMMM yyyy");      }      var b4 = data[i][3]; // Column D (index 3)      var b5 = data[i][4]; // Column E (index 4)      var b6 = data[i][5]; // Column F (index 5)      var b7 = data[i][6]; // Column G (index 6)      var b8 = data[i][7]; // Column H (index 7)      if (b8 instanceof Date) {        b8 = Utilities.formatDate(b8, Session.getScriptTimeZone(), "dd MMMM yyyy");      }      var dataOutput = "
Transaction Information.
Tracking No.:" + obj + "
Transaction Title" + b1 + "
Date Accepted by Focal:" + b3 + "
Name of Establishment:" + b4 + "
Address:" + b5 + "
Status:" + b6 + "
Claimed by:" + b7 + "
Date Claimed:" + b8 + "
"; return dataOutput; } } var dataOutput = "Transaction not found. For other concerns, please contact us at **********"; return dataOutput;}

代码解释:

sheet.getRange(1, 1, lr, 8).getValues(): 获取从第一行第一列开始,到最后一行第八列的所有数据,并将数据存储在一个二维数组中。data[i][1] 访问第 i 行第二列的数据。

总结:

通过使用 Utilities.formatDate 函数或 getDisplayValue 方法,你可以轻松地将 Google Sheets 中的日期格式化为 Webapp 中所需的格式。此外,使用 getValues 方法批量获取数据可以提高脚本的效率。选择哪种方法取决于你的具体需求和 Google Sheets 中显示的日期格式。建议优先使用 Utilities.formatDate 函数,因为它提供了更大的灵活性和控制力。

以上就是将 Google Sheets 中的日期格式化到 Webapp的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1575727.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
Vue3 Datepicker日期格式化:自定义输出格式的实用指南
上一篇 2025年12月22日 17:23:35
解决浏览器中Socket.IO客户端模块解析失败问题
下一篇 2025年12月22日 17:23:50

相关推荐

  • Debian系统上Tomcat日志如何备份

    Debian系统上Tomcat日志如何备份Debian系统上Tomcat日志如何备份Debian系统上Tomcat日志如何备份Debian系统上Tomcat日志如何备份

    本文介绍几种在Debian系统上备份Tomcat日志文件的有效方法,帮助您安全地保存和管理重要的日志信息。 方法一:手动备份 找到日志文件: Tomcat日志文件通常位于 /var/log/tomcat 或 /opt/tomcat/logs 目录下。请根据您的实际安装路径进行调整。压缩日志: 使用 …

    2026年9月26日 • 用户投稿
    000
  • Linux如何从源码编译安装软件_configure与make命令详解

    Linux如何从源码编译安装软件_configure与make命令详解Linux如何从源码编译安装软件_configure与make命令详解Linux如何从源码编译安装软件_configure与make命令详解Linux如何从源码编译安装软件_configure与make命令详解

    答案是掌握 ./configure 和 make 的作用与用法可完成 Linux 源码编译安装。1. configure 检查系统环境并生成 Makefile,确保编译条件满足,支持 –prefix、–enable、–with 等选项定制安装;2. make 读取…

    2026年9月26日 • 用户投稿
    000
  • Debian上Tomcat日志文件过大怎么办

    Debian上Tomcat日志文件过大怎么办Debian上Tomcat日志文件过大怎么办Debian上Tomcat日志文件过大怎么办Debian上Tomcat日志文件过大怎么办

    Debian系统中Tomcat日志文件(例如catalina.out)过大,可能导致磁盘空间占用过多,影响系统性能,并增加日志管理和分析的难度。本文提供几种解决方法: 方法一:利用logrotate实现日志轮转 logrotate是Linux系统自带的日志管理工具,可自动轮转、压缩和删除日志文件。 …

    2026年9月26日 • 用户投稿
    100
  • LINUX连接不上WiFi怎么办_LINUX系统WiFi连接失败排查指南

    LINUX连接不上WiFi怎么办_LINUX系统WiFi连接失败排查指南LINUX连接不上WiFi怎么办_LINUX系统WiFi连接失败排查指南LINUX连接不上WiFi怎么办_LINUX系统WiFi连接失败排查指南LINUX连接不上WiFi怎么办_LINUX系统WiFi连接失败排查指南

    首先检查无线网卡是否被系统识别,通过lspci或lsusb命令确认硬件存在;若识别正常但无法连接,需安装对应驱动如firmware-iwlwifi或rtl88x2bu-dkms;确保NetworkManager服务已启动并启用;使用nmcli命令扫描并连接WiFi网络;若仍失败,可手动编辑Netpl…

    2026年9月26日 • 用户投稿
    400
  • Java 方法中数组参数的正确调用方式

    Java 方法中数组参数的正确调用方式Java 方法中数组参数的正确调用方式Java 方法中数组参数的正确调用方式Java 方法中数组参数的正确调用方式

    本文旨在阐述如何在 Java 方法中正确传递和使用数组参数。通过一个实际的例子,我们将详细讲解如何创建数组、将其作为参数传递给方法,以及如何在方法内部访问和操作数组元素。掌握这些技巧对于编写高效且易于维护的 Java 代码至关重要。 在 Java 编程中,方法经常需要接收数组作为参数,以便对一组数据…

    2026年9月26日 • 用户投稿
    000
  • 安装 Windows 10 时,提示 “计算机的磁盘空间不足”,如何清理?

    安装 Windows 10 时,提示 “计算机的磁盘空间不足”,如何清理?安装 Windows 10 时,提示 “计算机的磁盘空间不足”,如何清理?安装 Windows 10 时,提示 “计算机的磁盘空间不足”,如何清理?安装 Windows 10 时,提示 “计算机的磁盘空间不足”,如何清理?

    首先需明确是全新安装还是升级安装,通常全新安装更易解决空间不足问题。在Windows 10安装界面按Shift+F10打开命令提示符,输入diskpart进入分区工具,执行list disk查看磁盘,select disk X选择目标磁盘(X为磁盘编号),再通过list partition查看分区情…

    2026年9月26日 • 用户投稿
    100
  • 抖音网页版屏蔽用户怎么操作_抖音网页版屏蔽特定用户教程

    抖音网页版屏蔽用户怎么操作_抖音网页版屏蔽特定用户教程抖音网页版屏蔽用户怎么操作_抖音网页版屏蔽特定用户教程抖音网页版屏蔽用户怎么操作_抖音网页版屏蔽特定用户教程抖音网页版屏蔽用户怎么操作_抖音网页版屏蔽特定用户教程

    抖音网页版不支持屏蔽功能,需通过手机App操作。1. 拉黑用户:进入主页→点击“…”→选择“拉黑”;2. 设置“不给谁看”:发布视频时选“公开范围”→“不给谁看”→勾选用户;3. 开启私密账号:在隐私设置中启用,仅粉丝可看内容。网页版因功能受限且涉及隐私安全,相关操作均需手机端完成。 抖音网页版目前…

    2026年9月26日 • 用户投稿
    200
  • win8桌面图标不见了_Win8桌面图标恢复

    win8桌面图标不见了_Win8桌面图标恢复win8桌面图标不见了_Win8桌面图标恢复win8桌面图标不见了_Win8桌面图标恢复win8桌面图标不见了_Win8桌面图标恢复

    首先检查桌面图标显示设置,右键桌面选择“查看”并勾选“显示桌面图标”;若无效,通过任务管理器重启Windows资源管理器进程;如仍无改善,可删除%localappdata%目录下的IconCache.db文件以重建图标缓存;最后使用系统自带的桌面疑难解答工具进行自动修复。 如果您发现Windows …

    2026年9月26日 • 用户投稿
    000
  • 从Scanner读取单个字符时处理空格的问题

    从Scanner读取单个字符时处理空格的问题从Scanner读取单个字符时处理空格的问题从Scanner读取单个字符时处理空格的问题从Scanner读取单个字符时处理空格的问题

    本文旨在解决Java中使用Scanner读取用户输入时,由于Scanner默认以空格作为分隔符,导致读取单个字符时出现的问题。我们将深入探讨Scanner的工作原理,并提供使用Scanner.nextLine()方法读取整行输入来解决此问题的方案,确保程序能够正确处理包含空格的输入。 在使用Java…

    2026年9月26日 • 用户投稿
    100
  • grokAI平台官方网站主页 grokAI 智能助手入口官方直达地址

    GrokAI平台官方网站主页是https://grok.com/,用户可直接访问该网址进入。新用户无需注册即可点击“Start Chatting”体验基础功能,登录X账号则可使用高级服务。 ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜ Gr…

    2026年9月26日
    100
  • 番茄小说怎么恢复误删的书签_番茄小说误删书签恢复教程

    可通过检查回收站、阅读历史、云同步或联系客服恢复误删书签。首先查看书签管理中的已删除项,若无则通过阅读历史定位并重添书签;若开启云同步可尝试重新同步数据;最后可联系客服提供删除时间、书籍名称等信息寻求帮助。 如果您在阅读过程中不小心删除了番茄小说中的书签,导致无法快速定位之前的阅读位置,可以通过以下…

    2026年9月26日
    100
  • 从 0 开始学 V8 漏洞利用之 V8 通用利用链(二)

    作者:hcamael@知道创宇404实验室 相关阅读:从 0 开始学 V8 漏洞利用之环境搭建(一)经过一段时间的研究,先进行一波总结,不过因为刚开始研究没多久,也许有一些局限性,以后如果发现了,再进行修正。 概述 ‍我认为,在搞漏洞利用前都得明确目标。比如打CTF做二进制的题目,大部分情况下,目标…

    2026年9月26日
    100
  • 蛙漫2(台版)官方入口 waman2台版最新漫画直达链接

    蛙漫2(台版)官方入口 waman2台版最新漫画直达链接蛙漫2(台版)官方入口 waman2台版最新漫画直达链接蛙漫2(台版)官方入口 waman2台版最新漫画直达链接蛙漫2(台版)官方入口 waman2台版最新漫画直达链接

    本文为您提供蛙漫2(台版)的官方入口和waman2台版最新漫画的直达链接。如果您希望通过最安全、最快捷的官方渠道直接访问最新的漫画内容,请遵循以下指引,我们将引导您进入无删减、无广告的高清正版漫画世界。 观看地址一:“☞☞☞☞蛙漫2(台版)入口通道☜☜☜点击进入”; 观看地址二:“☞☞☞☞蛙漫2(台…

    2026年9月26日 • 用户投稿
    200
  • 强!荣耀 Magic V5 官宣搭载 6100mAh 青海湖刀片电池

    强!荣耀 Magic V5 官宣搭载 6100mAh 青海湖刀片电池强!荣耀 Magic V5 官宣搭载 6100mAh 青海湖刀片电池强!荣耀 Magic V5 官宣搭载 6100mAh 青海湖刀片电池强!荣耀 Magic V5 官宣搭载 6100mAh 青海湖刀片电池

    官方消息透露,7 月 2 日晚 19:00,荣耀将召开 magic v5 及 ai 终端生态发布会。届时,荣耀 magic v5 等多款旗舰新品将同步登场。早在 6 月 25 日,荣耀就已为 magic v5 开启预热宣传。据 cnmo 掌握的信息,这款折叠屏手机搭载了容量高达 6100mah 的青…

    2026年9月26日 • 用户投稿
    100
  • sublime怎么解决mac上无法使用命令行subl的问题_sublime Mac命令行Subl问题解决

    sublime怎么解决mac上无法使用命令行subl的问题_sublime Mac命令行Subl问题解决sublime怎么解决mac上无法使用命令行subl的问题_sublime Mac命令行Subl问题解决sublime怎么解决mac上无法使用命令行subl的问题_sublime Mac命令行Subl问题解决sublime怎么解决mac上无法使用命令行subl的问题_sublime Mac命令行Subl问题解决

    首先确认Sublime Text已安装在/Applications/Sublime Text.app,然后通过sudo ln -s /Applications/Sublime Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl创建…

    2026年9月26日 • 用户投稿
    100
  • WPS云文档怎么同步文件_WPS云文档同步文件的详细教程

    WPS云文档怎么同步文件_WPS云文档同步文件的详细教程WPS云文档怎么同步文件_WPS云文档同步文件的详细教程WPS云文档怎么同步文件_WPS云文档同步文件的详细教程WPS云文档怎么同步文件_WPS云文档同步文件的详细教程

    开启WPS云同步需登录账号并启用“文档云同步”功能,将文件保存至WPS Cloud Files本地目录,即可在多设备间自动同步;手机端登录相同账号后可在“云文档”中查看编辑,确保网络畅通及客户端运行正常以避免同步异常。 WPS云文档可以让你在不同设备间自动同步文件,方便随时随地查看和编辑。只要登录同…

    2026年9月26日 • 用户投稿
    300
  • 伊津野英昭腾讯原创3A新情报:融合鬼泣、龙信精华!

    伊津野英昭腾讯原创3A新情报:融合鬼泣、龙信精华!伊津野英昭腾讯原创3A新情报:融合鬼泣、龙信精华!伊津野英昭腾讯原创3A新情报:融合鬼泣、龙信精华!伊津野英昭腾讯原创3A新情报:融合鬼泣、龙信精华!

    据automatonmedia报道,《鬼泣》系列总监、《龙之信条》系列主导者伊津野英昭近日在接受《fami通》采访时,分享了他离开卡普空后首个新项目的最新进展。 伊津野在卡普空工作长达30年,于2024年8月正式离职,并加入腾讯,出任光子工作室日本分部负责人。他目前正在主导开发的首款作品,是一款面向…

    2026年9月26日 • 用户投稿
    000
  • KOOK官网最新登录器 _ Kook语音网页版下载地址

    KOOK官网最新登录器 _ Kook语音网页版下载地址KOOK官网最新登录器 _ Kook语音网页版下载地址KOOK官网最新登录器 _ Kook语音网页版下载地址KOOK官网最新登录器 _ Kook语音网页版下载地址

    KOOK官网最新登录器位于其官方网站https://www.kookapp.cn/,支持Windows、macOS、Android、iOS及网页端多设备同步登录,用户可在此下载客户端或直接通过网页版参与语音频道互动。 KOOK官网最新登录器在哪里?这是不少网友都关注的,接下来由PHP小编为大家带来K…

    2026年9月26日 • 用户投稿
    200
  • 蛙漫2(台版)官网网页版地址 蛙漫2(台版)官方正版漫画免费在线看

    蛙漫2(台版)官网网页版地址 蛙漫2(台版)官方正版漫画免费在线看蛙漫2(台版)官网网页版地址 蛙漫2(台版)官方正版漫画免费在线看蛙漫2(台版)官网网页版地址 蛙漫2(台版)官方正版漫画免费在线看蛙漫2(台版)官网网页版地址 蛙漫2(台版)官方正版漫画免费在线看

    是否正在寻找蛙漫2(台版)的官网网页版地址,希望能够直接在线免费观看官方正版漫画?本文将为您提供最准确的官网地址,引导您进入无删减、无广告的高清在线阅读平台。 观看地址一:“☞☞☞☞蛙漫2(台版)入口通道☜☜☜点击进入”; 观看地址二:“☞☞☞☞蛙漫2(台版)官方正版资源APP☜☜☜点击进入”; 要…

    2026年9月26日 • 用户投稿
    100
  • debian邮件服务器如何实现自动回复

    debian邮件服务器如何实现自动回复debian邮件服务器如何实现自动回复debian邮件服务器如何实现自动回复debian邮件服务器如何实现自动回复

    在debian系统搭建自动回复邮件服务器,只需简单几步即可实现。本文将指导您配置postfix邮件服务器,实现自动回复功能。 一、安装Postfix 首先,确认Debian系统已安装Postfix。若未安装,请执行以下命令: sudo apt updatesudo apt install postf…

    2026年9月26日 • 用户投稿
    300

发表回复

登录后才能评论
关注微信