Я изменил фрагмент кода, который я нашел в одном из ответов здесь, но когда я запускаю свой измененный код, он работает как желаемый / ожидаемый. После печати значения он продолжает работать и вынуждает меня использовать задачу управления для выхода из программы.
Я адаптировал cpde, который поместил @JeffB, и он прекрасно работает, находит нужную ячейку и печатает ее.
Однако после этого он продолжает работать и не останавливается. К моменту, когда я должен использовать диспетчер задач, чтобы уйти, есть идеи?
Я включил измененный код ниже
Microsoft ждет, пока другое приложение завершит действие OLE ", - это ошибка, которая появляется и действует так, как будто она находится в цикле, как каждый раз, когда я закрываю msgboxснова появляется.
Я просто запускаю макрос, нажимая кнопку воспроизведения, когда на экране модуля.
Public Sub version_control()
Dim serverFileName As String 'obtain url for sharepoint filename, insert below
Dim valuesAreDifferent As Boolean 'so we can do housekeeping below
Dim x As New Excel.Application 'make a new session for the sharepoint version
Dim w As Workbook 'grab-handle for the sharepoint file
Sheets("VC").Calculate
valuesAreDifferent = False 'implicit, being explicit
serverFileName = "http://whatever-domain.com/MySharepointWorkbook.xlsx"
x.Visible = False 'so it doesn't flash up when checking
Set w = x.Workbooks.Open(serverFileName) 'open the sharepoint version
If Sheets("VC").Range("A1").Value <> w.Sheets("VC").Range("A1").Value Then _
valuesAreDifferent = True
'housekeeping in case we don't quit
w.Close
x.Quit
Set w = Nothing
Set x = Nothing
If valuesAreDifferent Then
MsgBox "Please download the latest version from the Sharepoint"
Application.Quit
End If
End Sub
```