私はVBAを初めて使っていますが、私はこのプロジェクトを手に入れました。私は、特定の日付(月、日、年)をユーザー入力として取り込み、選択した日付のファイルから読み取られたデータを使用してその日のグラフを表示する、このExcelマクロファイルを持っています。各ファイルの名前は "xxxx_20170706.csv"のようになります。私はこのファイルを以下のように変更する必要があります。VBA:グラフにデータを追加する
1分ごとに記録された温度を含む1日1回、各ファイルが生成されます。問題は、各ファイルが1日に1回しか生成されず、前日の温度データ(データは00:00から23:59まで記録され続ける)を含んでいるため、今日のデータをチェックしたり使用することができないということです。基本的には、1日のグラフを見たい場合は翌日まで待たなければなりません。
この問題を解決するために、毎日1時間に1つのファイル(1日に24ファイル生成)を生成することにしました。各ファイルには1時間前のデータが含まれています。たとえば、1日の午前1時に、0時から0時59分までの時間の温度データを含むファイルが生成されます。このようにして、今日のデータを見ることができます。
これは、朝の5:30に5つの異なるファイルが生成されることを意味します。
問題は、複数のファイルからグラフを生成する方法がわかりません。ユーザーの入力は同じままで、温度データの表示を希望する特定の日付の入力を促すだけです。出力は、その時点に存在する日付の温度データを反映する1つのグラフである必要があります。
各ファイルの名前は "xxxx_20170706_YY.csv"となります。ここで、YYは2桁の時間(00〜23まで)です。
ループを増分してファイル名の最後に追加して、選択した日付の既存ファイルを読み込めるようにしました。しかし、それは動作せず、最後に読み込まれたファイルからのデータのグラフしか表示されませんでした。 1日に5つのファイルがある場合、これらの5つのファイルのすべてをグラフに使用する必要があります。
これはどのように達成できますか?私が思いついたアイデアは、新しいExcelファイルを作成し、forループでファイルを読み込むたびに、ファイルの最後にデータを追加し、最後にその新しいExcelファイルを一度読み込みます、グラフを生成する。
他にも良い方法がありますか?あなたの助けを前もってありがとう!
これはかなり簡単です。ある日から5つ以上のファイルに基づいてADODB.Recordsetを作成することができます。 –