Я хочу настроить код VBA, созданный для моего макроса Excel.Мой файл состоит из 2 листов.Во-первых, когда я получаю непрерывные данные в реальном времени из внешнего программного обеспечения, я не знаю точно, как это программное обеспечение отправляет данные в реальном времени в Excel, потому что оно автоматически создает этот документ Excel, который внутри не имеет ссылки на формулу, макроса или подключения к данным.внутри него.На втором листе я хочу сохранить данные.
Я создал следующие макросы, которые работают правильно, но я уверен, что это не лучший способ кодирования, поэтому я ищу некоторыепомогите сделать код более простым и правильным.
В этой книге у меня есть этот код:
Private Sub Workbook_Open()
Call Calc
End Sub
На листе 2 этот код:
Private Sub Worksheet_Calculate()
Call Calc
End Sub
На модуле 1этот код:
Sub Calc()
Static arrOld()
Dim rng As Range
Dim cella As Range
Dim j As Long
Dim bChanged As Boolean
Set rng = Foglio2.Range("A1").SpecialCells(xlCellTypeFormulas, 7)
ReDim Preserve arrOld(1 To rng.Cells.Count)
For Each cella In rng
j = j + 1
If arrOld(j) <> cella.Value Then
bChanged = True
arrOld(j) = cella.Value
End If
Next
If bChanged Then
Call copiag
End If
Set rng = Nothing
End Sub
А на Модуле2 этот код:
Sub copiag()
Sheets("Foglio1").Select
Rows("4:4").Select
Selection.Copy
Sheets("Foglio2").Select
Rows("4:4").Select
Selection.Insert Shift:=xlDown
End Sub
Буду очень признателен за вашу помощь.Спасибо С уважением