Страницы: 1
RSS
Проблема отображения #ЗНАЧ! при правильном вычислении формулы на некоторых компьютерах
 
Подскажите, пожалуйста, как справится с проблемой? На трех компьютерах стоит одинаковый Excel 2019 х64, на всех компьютерах в одном и том же файле все формулы прекрасно работают. Но на двух компьютерах отображается результат всех формул, а на одном, при открытии файла, некоторые формулы СУММАПРОПИСЬЮ отображают "#ЗНАЧ!", пока вручную их не перещелкнешь F2+Enter.
 
Проверить в файле с ошибкой какой режим вычислений стоит ручной, или автомат? Можно, увидев ошибку, нажать F9, если все пришло в божеский вид - то включить автоматическое вычисление формул в параметрах.
Кому решение нужно - тот пример и рисует.
 
стоит автомат... F9 не спасает, только F2)
 
Попробуйте первой строкой функции(в коде VBA) поставить:
Код
Application.Volatile True
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Дмитрий(The_Prist) Щербаков не хочет, окоянный(
 
На компьютерах, где не работает, проверьте функцию в новом файле.
 
vikttur, файл, который выложен для примера, уже заведенный мною новый файл, и опять же - где работало, там работает, где не работало, там не работает...
Изменено: sasch78 - 13.09.2021 11:45:05
 
Как переносили? Копированием? Вы могли перенести с внутренней ошибкой файла (поломка книги в недоступных внутренностях- как вариант, догадка)
 
Не хочет что? Вставлять эту строку или пересчитывать? Вообще самое правильное - это вдумчиво на проблемном ПК запустить файл и просмотреть все события, которые происходят. Может содержимое сразу не включается. По идее, одноразовая операция по пересчету должна помочь в данном случае.
Или, если такой возможности нет, то можно выполнить такой код(помещаем в модуль ЭтаКнига(ThisWorkbook):
Код
Private Sub Workbook_Open()
    Application.OnTime Now, Me.CodeName & ".CalcMe"
End Sub
Sub CalcMe()
    Dim sh As Worksheet
    For Each sh In Me.Worksheets
        sh.UsedRange.Replace "=", "=", xlPart
    Next
End Sub
если эти функции в конкретном известном диапазоне - то лучше вместо UsedRange использовать именно его. Тоже самое и с листами - если функция на заранее известном листе - то лучше производить замену только на нем.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
vikttur, мистика... уже вручную воссоздал все в новом файле, включая имена, скопировал только текст макросов... проблема осталась, теперь, наверное, только офис и винду сносить(
 
Дмитрий(The_Prist) Щербаков, чудо случилось! спасибо Вам огромное, очень выручили! сработал макрос, помещенный в модуль ЭтаКнига... ура и слава великим Экселеведам!
 

Может кому будет интересно, докопался я до причины проблемы: дело было в хламе, валявшемся в C:\Users\User\AppData\Roaming\Microsoft\AddIns\VBA-Excel.xlam.

Страницы: 1
Наверх