Страницы: 1
RSS
Удаление строк, не изменяя размер таблицы.
 
Всем доброго дня!  
Подскажите пожалуйста реально ли реализовать следующую задачу:  
В таблице есть заполненные строки, необходимо что бы при необходимости любую из этих строк можно было удалить. Но при этом ничего не нарушалось, то есть таблица оставалась тех же размеров, а заполненные строки ниже удаленной поднимались вверх на освободившееся место нумерация соответствено тоже менялась.  
Да и совет или способ каким образом удалять, в смысле кнопкой на против каждой строки, или крестиком или ещё каким-нибудь способом.
 
убрал все объединения и имена (зачем это?!!!), исправил формулы  
строчка удаляется и изменяется нумерация если удалить значение из ячейки с названием
 
Дополнение. В яч.В4 написать формулу =В3+1 и скопировать до конца солбика. Удаление- выделить строку направляя курсор к номеру строки и нажать CTRL + клавишу "-"
 
Размеры таблицы сохраняются, строки нумеруются. Формулы - Ваша забота. Макрорекордер умеет протягивать.
Я сам - дурнее всякого примера! ...
 
KuklP а что нужно поменять в коде что бы он работал нормально, даже если таблица будет начинатся например с 22 строки?
 
Там к началу привязан только этот цикл:  
Public Sub НумерацияПунктов()  
   Dim i As Integer  
   Dim b As Integer  
   b = 1  
   For i = 3 To LastRec ' вот здесь вместо 3 подставьте Ваше хочу :-)  
           Cells(i, 2).Value = b  
           b = b + 1  
   Next  
End Sub
Я сам - дурнее всякого примера! ...
 
Или же создать функцию FirstRec и по каким-то признакам определять Ваше хочу. Но не думаю, что Ваша таблица будет гасать по всему листу и ее придется ловить.  
Тогда совсем грустно.:-)
Я сам - дурнее всякого примера! ...
 
KuklP а если так, подскажите где ошибка?  
Нажмите на пару серых кнопок и увидите...  
 

<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>

 
Вот так:  
Public Function LastRec() As Long  
   LastRec = Cells(Rows.Count, 4).End(xlUp).Row  
End Function  
Кто ж мог знать, что придется продираться через объединенные ячейки.  
Аноним прав. Вместо объединения можно центрировать по выделению(увы, только по горизонтали). Ну ничего, Вам всего одну циферку исправить.
Я сам - дурнее всякого примера! ...
 
Упс, еще и это:  
Public Sub НумерацияПунктов()  
   Dim i As Integer  
   Dim b As Integer  
   b = 1  
   For i = 24 To LastRec  
           Cells(i, 2).Value = b  
           b = b + 1  
   Next  
End Sub  
Две циферки
Я сам - дурнее всякого примера! ...
 
Честно делал все тоже самое, но почему то глючил, щас повторил все работает.    
Огромное всем и Вам в частности спасибо!!!
 
Сорри, поспешил. Дорогой KuklP, посмотрите пожалуйста при удаление, появляются лишние "красненькие кнопочки" те которые для календаря. Новую запись после них уже не добавить.
 
У меня тут Опера слетела, пока восстановил...  
Kolyan1234, у Вас лист защищен. Как Вы удаляете строки?
Я сам - дурнее всякого примера! ...
 
Снимаю защиту (пока в ручную, но то есть макрос W) выделяю строку и удаляю, в дальнешем планирую маленькие кнопочки на каждую строку.
 
Намек не прошел. Еще одна попытка: мне взломать Ваш пароль, чтобы была возможность помочь Вам?
Я сам - дурнее всякого примера! ...
 
Ну я же для простоты выполнить надо макрос под названием W. А так пароль ehfkcb,
 
Вопрос снят. занимаюсь Вашим вопросом.
Я сам - дурнее всякого примера! ...
 
If Target.Cells.Count > 1 Then Exit Sub  
Когда Вы удаляете строку то Target.Cells.Count > 1 поэтому все, что дальше - не работает - Exit Sub. Буду дальше разбираться.
Я сам - дурнее всякого примера! ...
 
Да-да, спасибо!  
Буду ждать!
 
Kolyan1234, Вы обратили внимание на размер Вашего файла? Из-за Вас и меня модеры заругают. Файл удалят. Я хотел предварит. результат отослать, глянул на размер и ... Он даже упакованный плметра занимает. Если согласны ждать, пока я прозрею, то только по личной переписке.  
kuklp@mail.ru Но быстро не обещаю. Кроме этого много других дел.
Я сам - дурнее всякого примера! ...
 
Конечно, конечно! Спасибо, отправил Вам сообщение.
 
{quote}{login=Kolyan1234}{date=13.05.2010 06:01}{thema=}{post}Конечно, конечно! Спасибо, отправил Вам сообщение.{/post}{/quote}  
До сих пор не получил.
Я сам - дурнее всякого примера! ...
 
Нет,я рабочий @mail указал. Теперь в понедельник придет только. Проверяют сообщения с общественных ящиков.
 
Или это не вопрос, а константация?
 
На всякий случай отправил с другого @mail.
 
Отправил ответ.
Я сам - дурнее всякого примера! ...
 
Большое Вам спасибо KuklP!!!  
 Обязательно разберусь...
 
{quote}{login=Kolyan1234}{date=17.05.2010 05:21}{thema=}{post}Большое Вам спасибо KuklP!!!  
 Обязательно разберусь...{/post}{/quote}  
Ну, отписались и то спасибо. Есть последний вариант Вашего файла. Почистил ошибки. Если интересует - в личку. Вышлю туда же.
 
Это был я. Сам ругаю анонимов.
Я сам - дурнее всякого примера! ...
 
Интересует!!!
Страницы: 1
Читают тему
Наверх