Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.09.2011, 11:23   #1
Светлана87
Пользователь
 
Регистрация: 07.10.2009
Сообщений: 17
По умолчанию Программное отключение функции

Добрый день!
В моей книге есть пользовательская функция:
Function HasFormula(C As Range) As Boolean
HasFormula = C.HasFormula
End Function
Из-за данной функции неверно выполняется макрос.
Можно ли на время выполнения макроса отключить эту функцию?
Спасибо.
Светлана87 вне форума Ответить с цитированием
Старый 08.09.2011, 11:26   #2
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Замените название функции на другое - может и заработает всё.
Например:
Код:
Function HasMyRangeFormula(C As Range) As Boolean
HasMyRangeFormula = C.HasFormula
End Function
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 08.09.2011 в 11:29.
Hugo121 вне форума Ответить с цитированием
Старый 08.09.2011, 11:31   #3
Светлана87
Пользователь
 
Регистрация: 07.10.2009
Сообщений: 17
По умолчанию

Заменила. Не работает
А вот если в редакторе функцию закомментировать - все нормально
Светлана87 вне форума Ответить с цитированием
Старый 08.09.2011, 11:36   #4
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Непонятно.
Как связан макрос с этой функцией?
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 08.09.2011, 11:43   #5
Светлана87
Пользователь
 
Регистрация: 07.10.2009
Сообщений: 17
По умолчанию

Он никак не связан вроде. Функция мне нужна для условного форматирования, а макрос
для удаления данных на нескольких листах синхронно, начиная с выделенной ячейки.
Вот такой макрос Public Sub ааа()
Dim sh As Excel.Worksheet
Dim Строка As Long, Столбец As Long
Application.ScreenUpdating = False
Строка = ActiveCell.Row
Столбец = ActiveCell.Column
For Each sh In Sheets(Array("Лист1", "Лист2", "Лист3"))
sh.Range(sh.Cells(Строка, Столбец), sh.Cells(Строка + 300, Столбец)).Delete Shift:=xlToLeft
Next
Application.ScreenUpdating = True

End Sub
Вместе они почему-то не работают Все уже перепробовала...

Последний раз редактировалось Светлана87; 08.09.2011 в 11:59.
Светлана87 вне форума Ответить с цитированием
Старый 08.09.2011, 12:11   #6
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Не знаю.
Можете файл приложить - интересно глянуть на такую ситуацию.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 08.09.2011, 12:25   #7
Watcher_1
Форумчанин
 
Аватар для Watcher_1
 
Регистрация: 22.06.2011
Сообщений: 325
По умолчанию

А из какой части кода у вас вызывается эта функция HasFormula?
Заказать макрос можно на сайте http://excel4you.ru/
Watcher_1 вне форума Ответить с цитированием
Старый 08.09.2011, 12:35   #8
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Мне кажется, что она на листе. И при удалении строк удаляется контролируемый диапазон, что вызывает ошибку в функции, что вызывает ошибку в УФ.
Но нужно видеть файл.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 08.09.2011, 12:40   #9
Светлана87
Пользователь
 
Регистрация: 07.10.2009
Сообщений: 17
По умолчанию

Я файл могу только вечером. У нас закрытое предприятие - пересылка запрещена. И макрос и формула в Modules
Светлана87 вне форума Ответить с цитированием
Старый 08.09.2011, 12:41   #10
Светлана87
Пользователь
 
Регистрация: 07.10.2009
Сообщений: 17
По умолчанию

Ошибка при выполнении макроса не выскакивает, просто данные удаляются только с первого листа, а когда функция закомментирована, то со всех
Светлана87 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программное изменение данных, передаваемых функции Saori Microsoft Office Excel 14 11.08.2011 15:29
Отключение функции (PHP) LonsdaleAC Помощь студентам 1 13.11.2009 17:24
программное отключение монитора Dimarik Общие вопросы C/C++ 2 26.09.2009 18:05
Проблемма: Программное отключение "защиты формы" влияет на скорость выполнения программного кода... StrikeR33 Microsoft Office Word 0 28.05.2008 20:11