2016-08-26 20 views
0

VBAを使用してPIサーバから膨大な量のデータを取得しています。VBAを使用してPIデータリンクからデータを引き出す

**Dim myValues As PIValues 

Set myValues = PIMath.GetInterpolatedValues_Point(inputPIPoint, 
    PIMath.StringToPITimeFormat(StartDate), 
    PIMath.StringToPITimeFormat(NextDate), "10s")** 

ワークシートの列にMyValuesに保存されているすべての値をコピーするための最速の方法は何ですか:私は、次のコードを使用していますか? Forループを使用しています:

For k = 1 To myValues.Count 

Worksheets("Sheet6").Cells(k, 2).value = myValues(k) 

しかし、複数のPIタグを使用し、時間間隔を5秒に変更するとプロセスが非常に遅くなります。

さらに、フルループの最後にmyValuesを空に設定するにはどうすればよいですか?これは私が何をしようとしていますものです:

  1. MyValuesは、第三
  2. に日2日からのデータが含まれてい MyValuesのすべてのPIポイントは
  3. MyValuesをクリアしてください
  4. 第二に日付1日からのデータが含まれています

答えて

0

のような何か:

Worksheets("Sheet6").Range("B1").Resize(UBound(myValues)+1,1).Value = _ 
             Application.Transpose(myValues) 
関連する問題