2013-10-23 40 views
0

當我使用以下Applescript(我在StackOverflow :)上找到)時,它工作得很好,除了腳本選擇的單元格是日期但它不能正確顯示在applescript上。或許,這將幫助:Applescript Excel日期單元格值顯示不正確

set searchRange to range ("D1:D100") 
set foundRange to find searchRange what "string" with match case 
set fRow to first row index of foundRange 
set myData to value of range ("B" & fRow as text) 

列B中選擇單元格的值是上午04點14分零零秒,但在AppleScript的,它返回爲0.176388888889

我該如何解決這個問題?

回答

2

這似乎是Excel內部存儲數據的方式。嘗試使用string value而不是value。這對我有效。

1

您的問題得到解答,但僅僅是爲了增加興趣:Excel將時間存儲爲小數部分,格式使其具有意義。所以中午爲0.5,理論上24:00:00爲1,但顯然時間又回到00:00:00。如果你將04:14:00乘以86400(一天中的秒數),它將以秒爲單位顯示時間。所以你可以看到如何用時間來做數學,以及Excel如何在後臺進行數學運算。

日期存儲爲整數,從1901年1月1日(1),其中今天的日期存儲計數爲41601.

要查看存儲的值只是改變單元格的格式爲「一般」(CMD +1,有用的快捷鍵)。