【发布时间】:2016-11-21 18:50:36
【问题描述】:
我正在编写一个 PowerShell 脚本来收集 F5 LTM 设备统计信息并通过 Excel 打开它。但是我得到了时间戳列,我想将其更改为人类可读的日期时间。我可以通过 Excel 公式 =(A2/86400)+25569+(-5/24) 手动更改它,然后将单元格格式化为最新。之后,我能够将其更改为人类可读的日期时间。
我的脚本如下:
# Allocate a new Query Object
$Query = New-Object -TypeName iControl.SystemStatisticsPerformanceStatisticQuery
$Query.object_name = "throughput"
$Query.start_time = 1479686400
$Query.end_time = 1480327200
$Query.interval = 0
$Query.maximum_rows = 0
【问题讨论】:
-
在日期列之后插入新列,在新列左侧有值的所有单元格中输入公式,复制列,粘贴值,格式化,然后删除第一列。将这些步骤记录为宏并将其转换为 PowerShell(有关转换指南,请参阅 here)。
-
谢谢。我试过了,但是当我添加公式时,它会在 b 列的所有单元格中粘贴相同的值。 =(A2/86400)+25569+(-5/24) 例如,它在B列下的所有单元格中使用A2值。有没有办法通过shell脚本使用excel的拖动功能。 ?
-
Shell 脚本完全是另外一回事。您应该能够记录自动填充单元格。否则循环以将具有递增索引的公式放入每个单元格中。
-
是的,我尝试使用循环,但是太慢了。填充一个单元需要将近 1 秒,并且有将近 400 个单元。所以我想没有直接的方法可以将时间戳更改为日期时间
-
填充一个单元格应该花费不到一秒钟的时间。如需进一步分析,请使用更完整的代码示例更新您的问题。
标签: excel powershell datetime