在Excel中从格式为MM / DD / YYYY HH:MM:SS.000的日期获取毫秒

时间:2018-10-18 03:38:44

标签: excel pandas date time milliseconds

尝试从格式为MM / DD / YYYY HH:MM:SS.000 PM的单元格中获取毫秒数。大多数方程式都会给出一个错误,指出:

“有一个或多个循环引用,其中公式直接或间接引用其自己的单元格。这可能导致它们计算不正确。”

Image of an example formatted cell

更新:

通过使用熊猫和时间库编写Python脚本解决了该问题。假设时间数据在A列中,则此代码应通过创建一个名为output.xlsx的新excel文件来工作:

import pandas as pd 
import time
df = pd.read_excel('firstFile.xlsx', usecols = "A")
writer = pd.ExcelWriter('output.xlsx', engine='xlsxwriter')
df.Time = pd.to_datetime(df.Time)
df.Time = df.Time.dt.microsecond
df.Time = df.Time - df.Time[0]
df.to_excel(writer, sheet_name = 'Sheet1')
writer.save()

2 个答案:

答案 0 :(得分:0)

以下公式似乎有效:

=RIGHT(TEXT(A1, "hh:mm:ss.000"),3)/1000

这假定您的日期在单元格A1中,并且可以通过转换为文本然后在末尾提取毫秒分量来工作。

答案 1 :(得分:0)

与单元格格式相比,“循环引用”错误与公式中的错误更多相关。 这个公式可以回答您的问题:

=MOD(MOD(A1;1)*24*60*60*1000;1000)

这假定您的日期在A1单元格中。

请记住,Excel中的日期是数字: 整数部分代表日期,而小数部分代表日间测量值(小时,分钟,秒和毫秒)