我使用VBA从PI Server中提取大量数据。我使用以下代码:
**Dim myValues As PIValues
Set myValues = PIMath.GetInterpolatedValues_Point(inputPIPoint,
PIMath.StringToPITimeFormat(StartDate),
PIMath.StringToPITimeFormat(NextDate), "10s")**
将MyValues中存储的所有值复制到工作表中的列的最快方法是什么?我正在使用For Loop:
For k = 1 To myValues.Count
Worksheets("Sheet6").Cells(k, 2).value = myValues(k)
但由于我使用多个PI标签并将时间间隔更改为5秒,因此这一过程极其缓慢。
另外,如何在每个完整循环结束时将myValues
设置为空?这就是我想要做的事情:
MyValues
包含从第1天到第2天的数据MyValues
中的所有PI分MyValues
包含第2日至第3日的数据答案 0 :(得分:0)
类似的东西:
Worksheets("Sheet6").Range("B1").Resize(UBound(myValues)+1,1).Value = _
Application.Transpose(myValues)