static final String AB = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
static SecureRandom rnd = new SecureRandom();
String randomString( int len ){
StringBuilder sb = new StringBuilder( len );
for( int i = 0; i < len; i++ )
sb.append( AB.charAt( rnd.nextInt(AB.length()) ) );
return sb.toString();
}
С помощью всех я пришел к решению. Используйте следующий код для подавления предупреждений, предотвращения вычислений и подавления обновлений экрана. Еще один ключ к немедленному открытию электронной таблицы - это исправить все связанные с этим ссылки. По-видимому, если есть неработающие ссылки, это все равно вызовет проблему с задержкой при загрузке электронной таблицы, хотя ей не нужно вычислять или обновлять любые формулы, ссылающиеся на них.
Application.DisplayAlerts = False
Application.Calculation = xlManual
Application.ScreenUpdating = False
Workbooks.Open "foo_bar.xlsx",ReadOnly:=True, UpdateLinks:=False
Вы можете добавить свои другие приложения в код, а также изменить имя файла
Sub GetIt()
Dim wb As Workbook, sh As Worksheet, LstRw As Long
Set wb = Workbooks.Open("C:\Users\dmorrison\Downloads\foo_bar.xlsx")
With wb
Set sh = Sheets(1)
With sh
LstRw = .Cells(.Rows.Count, "A").End(xlUp).Row
MsgBox .Range("A" & LstRw).Value
End With
.Close
End With
End Sub
Сохраните его с расширением xlsb. Двоичные файлы, как правило, примерно в 4 раза меньше, чем не двоичные файлы (в среднем), и они склонны открывать / закрывать в 4 раза быстрее (в среднем).