Следующий код редактирует несколько книг excel, но прежде чем редактировать книги, он сначала проверяет, работает ли книга в режиме чтения/записи. Если это не так, это закрывает и открывает книгу до тех пор, пока чтение/запись не будет активным.Доступ/Excel VBA - Пропуск для каждого цикла
Я обеспокоен тем, что этот цикл будет продолжаться вечно, если я не включу какой-либо вариант выхода в следующую книгу.
Есть ли способ реализации простое диалоговое окно с кнопкой «Повторить» и «Пропустить», если цикл достигает определенной попытки число, например 5
Retry - повторить попытку петли
Пропустить - Пропустить следующая книга
For Each i In MyArray
xl.Workbooks.Open (i)
'If workbook in read only mode , close and open till read/write is active
Do Until xl.ActiveWorkbook.ReadOnly = False
xl.ActiveWorkbook.Close (False)
If GetAttr(i) = vbReadOnly Then _
SetAttr i, vbNormal
xl.Workbooks.Open (i)
If xl.ActiveWorkbook.ReadOnly = False Then Exit Do
Loop 'Loop above till read/write active
'''''More code here when workbook read/write mode
Next
Петля все книги. Внутри этого цикла зациклируйте все листы в текущей книге. – MatthewD
Вы можете просто увеличивать переменную каждый раз и проверять, достигло ли определенного значения перед циклом. – Kyle