我是VBA的新手,但是我得到了該項目的工作。我有這個excel宏文件,它以用戶輸入的形式接收特定的日期(月,日,年),並使用從所選日期的文件中讀取的數據顯示當天的圖形。每個文件都被命名爲「xxxx_20170706.csv」。我需要修改此文件以實現以下目的。VBA:將數據添加到圖表
每個文件每天生成一次,包含每分鐘記錄的溫度。問題在於,由於每個文件每天只生成一次,並且包含前一天的溫度數據(數據在00:00至23:59之間保持記錄),因此無法檢查或使用今天的數據。基本上,如果你想看一天的圖表,你必須等到第二天。
爲了解決這個問題,我們決定每天每小時生成一個文件(即每天生成24個文件),並且每個文件都包含前一小時的數據。例如,在一天中的凌晨1點,生成一個包含一天中凌晨0點至凌晨0點59分的時間溫度數據的文件。這樣,即使在今天我們也能看到數據。
這意味着,在早上5點30分,應該生成5個不同的文件。
我遇到的問題是,我不知道如何從多個文件生成圖形。用戶輸入將保持不變,只提示他們想要查看溫度數據的特定日期。輸出需要是反映該點存在日期的溫度數據的一個圖形。
每個文件將被命名爲「xxxx_20170706_YY.csv」,其中YY是2位數小時(從00到23)。
我嘗試使用循環遞增我並將其添加到文件名的末尾,以便它可以繼續閱讀所選日期的現有文件。但是,它不起作用,只顯示上次讀取文件的數據圖。 如果一天有5個文件,那麼所有這5個文件都必須用於圖形。
這怎麼可能實現?我提出的一個想法是,我創建了一個新的excel文件,並且每次在for循環中讀取一個文件時,我都一直在文件底部添加數據,並在最後讀取一次新的excel文件,並生成圖。
還有其他更好的方法嗎?在此先感謝您的幫助!
這很容易實現。您可以基於一天內的5個或更多文件創建ADODB.Recordset。 –