|
|
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
Добрый день, уважаемые. Ситуация следующая: Существует книга Excel2003, c двумя листами, после выделения строки (произвольной) на первом листе, мне надо её удалить из первого листа и вставить во второй лист, но в качестве новой строки, не трогая данных которые там уже есть. Пробовал сам записать макрос, но он у меня не добавляет новую строку, а заменяет старую. Код: plaintext 1. 2. 3. 4. 5. 6. 7. Подскажите, как можно реализовать? Буду очень благодарен, в любом случае, ну а если с примером, сильнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2011, 09:25 |
|
||
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
Выбираете любую ячейку в строке, и... Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2011, 10:02 |
|
||
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
AndreTM, спасибо большое, все отлично. Заказывай поощрение (в пределах разумного) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2011, 10:34 |
|
||
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
?AndreTM, спасибо большое, все отлично. Заказывай поощрение (в пределах разумного) Извиняюсь, поторопился. Что-то не корректно работает. С листа1 удалет всегда, а на лист2 вставлет нормально, но иногда проскакивает вставка не новой записи а вместо существующей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2011, 10:49 |
|
||
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
?, я бы чуть усложнил на случай , если на листе 2 менее 2х записей(одна или ниодной) Sub ddd() On Error GoTo er ActiveCell.EntireRow.Copy (Sheets("Лист2").UsedRange.End(xlDown).Offset(1)) ActiveCell.EntireRow.Delete (xlUp) Exit Sub er: ActiveCell.EntireRow.Copy (Sheets("Лист2").UsedRange.Offset(1)) End Sub ну а почему иногда заменяет - надо смотреть на ваши записи.. скорее всего первая ячейка в какой то строке пустая, вот оно и принимает ее за конец записей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2011, 12:14 |
|
||
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
_slan_, спасибо большое, Вы были правы, действительно была проблема из-за пустых ячеек в начале строки. ?AndreTM, спасибо большое, все отлично. Заказывай поощрение (в пределах разумного) Предложение снова в силе. _slan_ и AndreTM, спасибо еще раз. Вопрос снят окончаиельно, проблема решена. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2011, 12:23 |
|
||
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
Еще раз добрый день, уважаемые! Снова к Вам за помощью. Мне требуется реализовать приблизительно тоже самое, что и было описано выше, но Курсор находится в определенной строке, после нажатия кнопки, надо скопировать эту строку, на другой лист, в конец диапазона строк и на этот же лист в конец диапазона строк, при этом удалить строку, в которой находился курсор и переместить курсор на последнюю строку этого же листа, т.е. на вновь скопированную строку. Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2011, 16:09 |
|
||
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
Замените в коде Copy на Cut ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2011, 16:43 |
|
||
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
Что-то я не совсем суть уловил, но наверное так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2011, 16:48 |
|
||
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
The_PristЧто-то я не совсем суть уловил, но наверное так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. Все отлично, ни чего не работает. запись копируется на другой лист, но не копируется также на этом же листе и курсор становится не в последнюю строку, а в первую в первый столбец. Вы уж меня простите, но я мало (чуть-чуть) в этом понимаю. Помогите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2011, 17:14 |
|
||
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
?апись копируется на другой лист, но не копируется также на этом же листе и курсор становится не в последнюю строку, а в первую в первый столбец.Было бы неплохо увидеть файл, чтобы понять причину. Если у Вас на обоих листа кол-во заполненных строк можно вычислить по столбцу А(реально любой столбец можно подставить), то можно попробовать так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2011, 17:23 |
|
||
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
?, ?запись копируется на другой лист, но не копируется также на этом же листе и курсор становится не в последнюю строку, а в первую в первый столбец. ИМХО, строка копируется, становится активной и удаляется Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2011, 17:30 |
|
||
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
The_Prist , шама-ан. Все отлично, работает, именно то что нужно. Спасибо большо-ое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2011, 17:32 |
|
||
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
Всем спасибо. Последнее предложение The_Prist, наиболее подходит. пробуй камнем, все происходит тоже самое как и первое предложение The_Prist (не работает), но все равно спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2011, 17:44 |
|
||
|
Добавление новой строки
|
|||
|---|---|---|---|
|
#18+
Именно поэтому я предпочитаю (прости, Shamanus!) использовать никак не .EntireXXX и .UsedRange, а обычную (СУБД) нумерацию по одному из столбцов первичным ключом и далее... далее хоть бинарным поиском, хоть взятием максимума из справочника... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2011, 23:20 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=37156042&tid=2177095]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
179ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
65ms |
get tp. blocked users: |
1ms |
| others: | 252ms |
| total: | 548ms |

| 0 / 0 |
