Страница 1 из 1

Странная реакция Excel на Type End Type

Добавлено: 16 дек 2005, 08:23
Sokl
:D
Прикольно!

Сделал следующее!

1. На Листе разместил элемент управления, например, кнопочку;
2. VBA в модуле этого листа написал:

Код: Выделить всё

Private Type utUserType
End Type
3. Вернулся на лист. Теперь Excel реагирует на событие наведения мышкой на кнопочку. При НАВЕДЕНИИ мышкой на кнопку имею ошибку выполнения макроса, хотя макрос никакой не выполняется!

4. Еще один эффект: для листа с таким "пустым" типом перестает работать всякое к нему обращение, например, сие:

Код: Выделить всё

For Each iSheet In ThisWorkbook.Sheets
           MsgBox iSheet.Name ' например свойство Щит.Наме
Next
Excel говорит: "}{реновый у Вас лист." Хотя лист-то тут не причем!

Прикольно! Гы! :D

Кстати, VBA как-то "ТРЕПЕТНО" относится к конструкции Type ... End Type. Я имею в виду, например:
1. Редактор автоматически не приписывает ...End Type, как например, ...End Sub
2. Редактор не удаляет лишние пробелы внутри Type... End Type!

Добавлено: 16 дек 2005, 10:33
alexx
мaлoвaтo бyдeт!

где дaнныe?

попробyй:

Код: Выделить всё

Private Type utUserType 
	MyVal as Int
End Type 

Добавлено: 16 дек 2005, 14:09
Naeel Maqsudov
В базе знаний Microsoft (на их сайте) смутно припоминаю статью про ошибку, связанную с тем, что в какой-то момент делается лишняя компиляция модулей листов. (Возможно говорилось о невозможности сохранения книги в каких-то условиях).
"}{реновый у Вас лист."
Попробуйте взять оригинальный текст ошибки и сделать по нему поиск на сайте, гх-м-м-м... разработчика.