Здравствуйте! Если Вас не затруднит уважаемые форумчане, поделитесь пожалуйста ЗНАНИЯМИ в решении проблемы (для меня). Не знаю куда мышкой ткнуть шобы все заработало. Работаю в Excel 2016. Суть своего вопроса, точнее 2 изложу на основе прикрепленного примера. При запуске макроса Пример, данные на основе пользовательской функции в диапазоне ячеек P1:X1 обрабатываются автоматически. При пошаговой обработке макроса через редактор Visual Basic, после выполнения макроса открывается окно обработки пользовательской функции ColorFunction, и пока это усьо неотработает данные в диапазоне ячеек P1:X1 не обновляются. Отсюда первый вопрос: как сделать так чтобы при пошаговом выполнении макроса «Пример» не открывалось окно обработки пользовательской функции, а данные в ячейках P1:X1 после выполнения макроса «Пример» автоматически обновлялись. Вопрос второй. Почему после запуска макроса «Очистка» в диапазоне ячеек P1:X1 выдает ошибку #ЗНАЧ!, а при выполнении этих же действий вручную (очистка заливки диапазон D1:M1 а затем очистка его содержимого), данные в диапазоне ячеек P1:X1 нормально обнуляются. Спасибо большое всем кто отозвется на помощь.
Здравствуйте! Если Вас не затруднит уважаемые форумчане, поделитесь пожалуйста ЗНАНИЯМИ в решении проблемы (для меня). Не знаю куда мышкой ткнуть шобы все заработало. Работаю в Excel 2016. Суть своего вопроса, точнее 2 изложу на основе прикрепленного примера. При запуске макроса Пример, данные на основе пользовательской функции в диапазоне ячеек P1:X1 обрабатываются автоматически. При пошаговой обработке макроса через редактор Visual Basic, после выполнения макроса открывается окно обработки пользовательской функции ColorFunction, и пока это усьо неотработает данные в диапазоне ячеек P1:X1 не обновляются. Отсюда первый вопрос: как сделать так чтобы при пошаговом выполнении макроса «Пример» не открывалось окно обработки пользовательской функции, а данные в ячейках P1:X1 после выполнения макроса «Пример» автоматически обновлялись. Вопрос второй. Почему после запуска макроса «Очистка» в диапазоне ячеек P1:X1 выдает ошибку #ЗНАЧ!, а при выполнении этих же действий вручную (очистка заливки диапазон D1:M1 а затем очистка его содержимого), данные в диапазоне ячеек P1:X1 нормально обнуляются. Спасибо большое всем кто отозвется на помощь.djon2012
Sub Пример() Application.ScreenUpdating = 0 Range("D9:M9").Copy Range("D1").PasteSpecial (xlPasteAll) Application.CutCopyMode = 0 Range("C1").Select Application.ScreenUpdating = 1 End Sub
[/vba] и [vba]
Код
Sub Очистка() Application.ScreenUpdating = 0 With Range("D1:M1") With .Interior .Pattern = xlNone .TintAndShade = 0 .PatternTintAndShade = 0 End With .ClearContents .Value = .Value End With Range("C1").Select Application.ScreenUpdating = 1 End Sub
[/vba]
Переписал Вам (думаю, так получше будет) [vba]
Код
Sub Пример() Application.ScreenUpdating = 0 Range("D9:M9").Copy Range("D1").PasteSpecial (xlPasteAll) Application.CutCopyMode = 0 Range("C1").Select Application.ScreenUpdating = 1 End Sub
[/vba] и [vba]
Код
Sub Очистка() Application.ScreenUpdating = 0 With Range("D1:M1") With .Interior .Pattern = xlNone .TintAndShade = 0 .PatternTintAndShade = 0 End With .ClearContents .Value = .Value End With Range("C1").Select Application.ScreenUpdating = 1 End Sub