На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Организуем VBA-FAQ! Если у Вас есть предложения, выскажитесь здесь: Пишем FAQ, интересно Ваше мнение
Популярные разделы FAQ:    user posted image Общие вопросы    user posted image Особенности VBA-кода    user posted image Оптимизация VBA-кода    user posted image Полезные ссылки

1. Старайтесь при создании темы указывать в заголовке или теле сообщения название офисного приложения и (желательно при работе с Office 95/97/2000) его версию. Это значительно сократит количество промежуточных вопросов.
2. Формулируйте вопросы как можно конкретнее, вспоминая (хотя бы иногда) о правилах ВЕЛИКОГО И МОГУЧЕГО РУССКОГО ЯЗЫКА, и не забывая, что краткость - сестра таланта.
3. Не забывайте использовать теги [сode=vba] ...текст программы... [/code] для выделения текста программы подсветкой!
4. Темы с просьбой выполнить какую-либо работу полностью за автора здесь не обсуждаются и переносятся в раздел ПОМОЩЬ СТУДЕНТАМ.
Модераторы: Old Bat, MIF
  
> VBA/Corel Draw/Ошибка при использовании Collection , Коллекция не выдает мне свои элменты... :(
    Создал два простых модуля класса:
    1. Коллекция (самая обыкновенная) - тип объекта - это есть второй класс. Добавлено только одно свойство через "Public".
    2. "ShapeData" - содержит всего три строки - объявление трех переменных - свойств уровня Public. Одна из переменных типа Shape, хотя думаю это не важно...

    Теперь инициализирую коллекцию, создаю shape (Set n = ThisDocument.ActiveLayer.CreateEllipse) и добавляю в коллекцию - все нормально, в модуле коллекции в локальной переменной появляется элемент, свойства нормальные, читабельные. Когда выходит из модуля - при попытке прочитать свойства, или даже установить указатель на элемент коллекции (типа ShapeData) вылетает ошибка 438: Object doesn't support this property or method/Объект не поддерживает это свойство или метод.

    Мне уже просто страшно грустно, потому как перепробовал все что мог... Копировал из VB6 модули классов созданных с помощью утилитки VB Class builder. Хотя она тоже глючная...
    Менял текст программы... Потихоньку начинаю сходить с ума.. :'( Помогите чем сможете... Всем откликнувшимся спасибо заранее...
      Сам вопрос задал, сам на него и отвечу... :))))
      Решение как и сама проблема оказалось тривиальным: Collection, при добавлении в него дополнительного свойства (а может просто при переносе в модуль класса - не проверял) теряет свойство по умолчанию, и необходимо прописывать не только индекс элемента но и своство .item(N)... вот такая вот история....
      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0362 ]   [ 16 queries used ]   [ Generated: 27.04.24, 01:40 GMT ]