如何使用“IF”和“包含”创建列你好,
我有一个日期和时间列,格式为“AM”和“PM”。
使用 JSL,我想添加一个新列来指示现在是白天还是晚上。
日期中包含“PM”的行将输入“Day”
日期中包含“AM”的行将输入“Night”
我尝试使用以下内容:
For( i = 1, i <= N Rows( dt ), i++,
If( Contains( :Date[i], "PM" ) ,
:Day/Night[i] = :Day[i]
)
但这是行不通的。
提前致谢!
);
回复:如何使用“IF”和“包含”创建列@ileshem ,
所有这些语法都在脚本指南中得到了很好的记录。我强烈建议您花时间阅读本文档。
帮助==>书籍==>脚本指南
它将为您提供所需的详细信息,让您更轻松地进入 JSL。
回复:如何使用“IF”和“包含”创建列哇!
谢谢!
回复:如何使用“IF”和“包含”创建列你好@ileshem ,
如果您的日期列以正确的日期/时间格式存储,它实际上不会包含字符,即使它是这样显示的。 因此,您需要一个不查找 AM/PM 的函数,而是可以确定 DateTime 是否指示中午 12 点之后的时间。 我附上了一个表格,其中我使用以下列公式完成了此操作:
If( Hour( :Time ) >= 12, "Night", "Day")
您可以轻松地将其调整为脚本的一部分,如下所示:
For( i = 1, i <= N Rows( dt ), i++,
If( Hour( :Time[i] ) >= 12,
:Name( "Day/Night" )[i] = "Night",
:Name( "Day/Night" )[i] = "Day"
)
);
它们使用 Hour() 函数从 DateTime 中提取一天中的小时。 另外,在原始 JSL 中,您需要 :Name() 来引用您的列 Day/Night,因为特殊字符(斜杠)意味着需要引用列名称。
我希望这有帮助!
@朱利安