各位大大,EXCEL問題請教。
假設儲存格A1的數值,代表著隨時改變的溫度變化。
請問如何在下午1點到2點,每隔30秒做一次讀取數值紀錄,並存於B列儲存格,依序B1,B2,B3,B4,B5
並在c1計算個溫度之算術平均數。
感恩各位。
是的話,方法如下
(7/19 12:56 補充說明:突然想到如果a1變動時間以秒計算的話,程式更短、更簡單,晚點補上)
==============================
c1 儲存格
=IF(B1<>"",AVERAGE(B:B),"")
vba 程式碼 (全部放在 ThisWorkbook )
Private Sub Workbook_Open()
Application.OnTime TimeValue("13:00:00"), "thisworkbook.test"
End Sub
Sub test()
If hour(Time) = 14 Then End
Range("b" & WorksheetFunction.CountA(Range("b:b")) + 1) = Range("a1")
Application.OnTime Now + TimeValue("00:00:30"), "thisworkbook.test"
End Sub
==============================
如果要測試程式功能(範例)
一、TimeValue("13:00:00") 改成 TimeValue("13:10:00")
二、hour(time)=14 改成 minute(time)=11
三、range("a1") 改成 rnd(timer) *100
四、TimeValue("00:00:30") 改成 TimeValue("00:00:03")
這樣程式就會在 13:10 開始,執行1分鐘,間隔 3秒,在b1、b2、b3... 記錄亂數
p.s 每天都要開啟、關閉excel 才行
如果要連續記錄好幾天程式還要修改
剩下的就自行解決吧