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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.01.2011, 15:50   #1
Елена Гох
Пользователь
 
Регистрация: 26.06.2010
Сообщений: 36
Вопрос ошибка 5941

Доброго времени суток! Подскажите, пожалуйста, как бороться с ошибкой "Запрашиваемый номер семейства не существует" для ячеек таблицы. Есть ли функция типа EXISTS для обхода обхода ситуации? Возникает при программной расщеплении ячейки.
Елена Гох вне форума Ответить с цитированием
Старый 27.01.2011, 18:00   #2
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,043
По умолчанию

EXISTS ля таблицы нет, но какокя разница, условие ведт всё равно надо ставить, что с EXISTS, что без него всё равно одна строка кода
Если талица1, строка1, количество 2 ячейки, тогда ...
или
Если талица1, строка1, EXISTS 2 ячейки, тогда ...
Ципихович Эндрю вне форума Ответить с цитированием
Старый 27.01.2011, 19:40   #3
Вождь
Форумчанин
 
Аватар для Вождь
 
Регистрация: 29.09.2008
Сообщений: 378
По умолчанию

Похоже, вы напрямую обращаетесь к ячейкам. Что-то типа:
Код:
Dim T As Table
Dim C As Cell
Dim i&, j&
    
    For i = 1 To T.Columns.Count
        For j = 1 To T.Rows.Count
            Set C = T.Cell(j, i)
            ' код расщепления
        Next j
    Next i
Попробуйте перебирать ячейки, используя команды Next и Previous:
Код:
    Set C = T.Cell(1, 1)
    Do
        ' код расщепления
        Set C = C.Next
    Loop While Not (C Is Nothing)
Трудно советовать, не видя ошибочного кода.
Макросы на заказ и готовый пакет - http://mtdmacro.ru/
Вождь вне форума Ответить с цитированием
Старый 28.01.2011, 07:11   #4
Вождь
Форумчанин
 
Аватар для Вождь
 
Регистрация: 29.09.2008
Сообщений: 378
По умолчанию

При работе с коллекциями (Collection) в том числе c коллекцией ячеек (Cells), достаночно проверить параметр Count:
Код:
if n > Cells.Count then End
Еще полезна функция IsObjectValid. Если объект был удален, то проверить его существование можно так:
Код:
Dim C as Cell
  Set C = Selection.Range.Cells(1)
  C.Delete
  if IsObjectValid(C) Then Else MsgBox "Ячейка удалена"
Макросы на заказ и готовый пакет - http://mtdmacro.ru/
Вождь вне форума Ответить с цитированием
Старый 28.01.2011, 07:46   #5
shanemac51
Участник клуба
 
Аватар для shanemac51
 
Регистрация: 12.08.2010
Сообщений: 1,077
По умолчанию

может программу выложите, а то неясны ваши действия с неоднородной таблицей(с объединенными-разъединенными ячейками)
Имя-Галина== почта shanemac51@yandex.ru скайп shanemac51 c 8-15мск будни
Сфера интересов--word-excel-access-распознавание
shanemac51 вне форума Ответить с цитированием
Старый 28.01.2011, 11:41   #6
Елена Гох
Пользователь
 
Регистрация: 26.06.2010
Сообщений: 36
По умолчанию

Всем огромное спасибо за советы! Попробую справиться с вашей помощью!
Елена Гох вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Nero - ошибка драйвера DMA. ошибка CRC NecRoMat Софт 5 09.05.2012 01:29
Ошибка в коде, ошибка в css или это проблема с совместимостью с браузерами? ankris HTML и CSS 5 23.11.2010 16:58
Это ошибка Delphi или моя ошибка??? bloodeagle Общие вопросы Delphi 3 12.11.2009 15:26
Ошибка в Аfor i:=1 to SI do. Пишит что ошибка в SI Алексей_xXx Помощь студентам 2 29.05.2009 00:09
...Ошибка 101 (net::ERR_CONNECTION_RESET): Неизвестная ошибка... infrared Помощь студентам 0 16.04.2009 17:44