У меня есть два компьютера под управлением Excel 2003 и SAP Business Explorer 7.2. Я пытаюсь обновить запросы в электронной таблице, которая имеет 30 вкладок и по крайней мере один запрос на каждой вкладке
Когда я обновляю все запросы на своем компьютере, они все успешно обновляются. Обновление всей таблицы занимает менее десяти минут.
Когда я пытаюсь сделать это на компьютере этого клиента, Excel обновляет первую вкладку, как я и ожидал, но затем зависает. Я оставил это больше часа, и это не сделало никакого прогресса. Несмотря на то, что нагрузка на ЦП для обращений к процессу Excel.exe зависает и остается постоянной на уровне 50% (это двухъядерный ПК, я предполагаю, что он увеличится, возможно, на 100%, если бы это было одно ядро), но, как ни странно, даже если он постоянно сидит на 50% CPU, в Process Monitor после зависания ничего не появляется. Я также запускаю сетевой монитор Microsoft и могу видеть сетевой трафик между Excel и сервером SAP вплоть до момента зависания Excel, но после этого ничего не происходит. Я также попытался выполнить запросы под учетной записью клиента и моей собственной учетной записью AD (которая никогда ранее не использовалась на этом ПК, поэтому был новый профиль), но без разницы. Я также проверил Excel.exe с Process Explorer, чтобы увидеть, есть ли какие-либо сторонние библиотеки DLL, но не нашел ничего необычного, ничего, чего нет на моем собственном ПК.
Что мне не хватает? Существуют ли другие доступные инструменты, которые могут показать мне, что делает Excel, когда он не отвечает, а использует 50% ЦП?
источник
Решил это в конце концов. Электронная таблица состояла из нескольких вкладок, а на других вкладках были буквально тысячи VLOOKUP, которые зависели от данных на первой вкладке. Поэтому, как только Business Explorer обновил данные на первой вкладке, Excel пытался обновить VLOOKUP на других вкладках.
Следовательно, Excel использует ядро процессора и, кажется, часами сидит и ничего не делает.
источник