📅  最后修改于: 2023-12-03 14:41:36.397000             🧑  作者: Mango
在 Google Sheets 中计算两个日期之间的工作日可以通过使用 TypeScript 进行自定义函数来实现。以下是一个示例的 TypeScript 代码片段,它实现了一个名为 workdaysBetween
的函数,用于计算两个日期之间的工作日数量。
/**
* Calculates the number of workdays (excluding weekends) between two dates.
* @param startDate The start date.
* @param endDate The end date.
* @returns The number of workdays between the two dates.
*/
function workdaysBetween(startDate: Date, endDate: Date): number {
// Calculate the difference in days
const days = Math.floor((endDate.getTime() - startDate.getTime()) / (1000 * 60 * 60 * 24));
// Calculate the number of weekends within the range
const weekends = Math.floor(days / 7) * 2;
// Adjust for the start and end date falling on a weekend
if (startDate.getDay() === 0) weekends--;
if (endDate.getDay() === 6) weekends--;
// Calculate the number of workdays
const workdays = days - weekends;
return workdays;
}
使用此代码片段,您可以将其添加到 TypeScript 文件中,并在 Google Sheets 中使用以下步骤将其作为自定义函数进行调用:
在 Google Sheets 中打开您想要使用自定义函数的工作表。
点击菜单栏上的 "扩展" 选项。
选择 "Apps 脚本编辑器"。
在脚本编辑器中,选择 "文件" > "新建" > "脚本文件"。
将代码片段粘贴到新建的脚本文件中。
保存脚本文件,并为该脚本文件提供一个名称(例如 "WorkdayUtils")。
返回到您的 Google Sheets 工作表,并在需要计算工作日的单元格中输入以下公式:
=WorkdayUtils.workdaysBetween(startDate, endDate)
其中 WorkdayUtils
是您在第 6 步中为脚本文件提供的名称,startDate
是开始日期的单元格引用,endDate
是结束日期的单元格引用。
按下回车键,即可计算出两个日期之间的工作日数量。
此代码片段遵循 TypeScript 语法,因此您需要在使用之前确保正确地配置 TypeScript 环境。您可以使用适用于 Google Apps Script 的 TypeScript 库进行配置。
希望这个 TypeScript 代码片段能够帮助您在 Google Sheets 中计算两个日期之间的工作日。