Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

Ответ
 
Опции темы
Старый 09.11.2018, 22:43   #1
segail
Участник клуба
 
Регистрация: 13.06.2009
Сообщений: 676
Репутация: 10
По умолчанию Вставка данных после последней заполненной ячейки.

Здравствуйте.
Помогите пожалуйста с кодом.
Необходимо в первом столбце "A" программно кодом найти последнюю ячейку с заполненными данными (после которой по столбцу вообще нет никаких данных) и в последующей пустой ячейке крайне левого столбца "A" выполнить только код ActiveSheet.Paste - код по вставке данных.

Последний раз редактировалось segail; 10.11.2018 в 02:16. Причина: Дополнено более подробно
segail вне форума   Ответить с цитированием
Старый 10.11.2018, 00:06   #2
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 24,614
Репутация: 5352
По умолчанию

http://www.programmersforum.ru/showthread.php?t=317592

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
Последняя строка столбца А
Код:

rowsCount = Cells(Rows.Count, "A").End(xlUp).Row

Serge_Bliznykov вне форума   Ответить с цитированием
Старый 10.11.2018, 03:06   #3
IgorGO
МегаМодератор
СуперМодератор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Адрес: УКРАЇНА, Київ
Сообщений: 8,997
Репутация: 1710

icq: 7934250
skype: i2x0,5
По умолчанию

Cells(Rows.count,1).end(xlup).offse t(1,0).paste
__________________
41001804815208 - Яндекс-деньги благодарности за удачные советы и решения можно отправлять прямо сюда)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума   Ответить с цитированием
Старый 10.11.2018, 10:42   #4
segail
Участник клуба
 
Регистрация: 13.06.2009
Сообщений: 676
Репутация: 10
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
Cells(Rows.count,1).end(xlup).offse t(1,0).paste
Здравствуйте.

Игорь, только таким образом срабатывает
Код:

Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste

а если непосредственно заменить Select на Paste то почему-то выдает ошибку по всей строке кода.
В принципе и Select устроит, поэтому благодарю за помощь!

Последний раз редактировалось segail; 10.11.2018 в 11:24.
segail вне форума   Ответить с цитированием
Старый 10.11.2018, 16:45   #5
Казанский
Профессионал
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,062
Репутация: 819
По умолчанию

Код:

Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial

__________________
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума   Ответить с цитированием
Старый 14.11.2018, 21:04   #6
Petrov210217
Пользователь
 
Регистрация: 14.11.2018
Сообщений: 24
Репутация: 10
По умолчанию Перенос данных из одной таблицы в другую

Доброго дня! Или ночи!!! У меня похожая проблема, но шире. Есть таблица на первом листе и такая же таблица на втором листе. Я заполняю данными первую таблицу на первом листе, а эти данные должны отразиться во второй таблице на втором листе. И тут главное:
1.Данные должны записываться в конец таблицы 2, при заполнении таблицы 1(именно таблицы, так как за ней текст и формулы) 2. Так как таблица будет увеличиваться, она дойдет до текста и формул ниже, а этого не должно быть и при этом формулы должны работать. Прикладываю файл с таблицами. спасибо за помощь!
Вложения
Тип файла: xlsx Пример.xlsx (12.4 Кб, 2 просмотров)
Petrov210217 вне форума   Ответить с цитированием
Старый 15.11.2018, 21:07   #7
Petrov210217
Пользователь
 
Регистрация: 14.11.2018
Сообщений: 24
Репутация: 10
По умолчанию

Подскажите пожалуйста, есть вот такой код(кнопка Сохранить и добавить):
Цитата:
Private Sub CB_LvSave1_Click()
Dim NextRow As Long
Dim КудаВставить14 As Range
Dim КудаВставить15 As Range
Dim КудаВставить16 As Range
Dim КудаВставить17 As Range
Dim КудаВставить18 As Range
Dim КудаВставить19 As Range
Dim КудаВставить20 As Range
Dim КудаВставить21 As Range
Dim КудаВставить22 As Range
Dim КудаВставить23 As Range
Dim КудаВставить24 As Range
Dim КудаВставить25 As Range
Dim КудаВставить26 As Range
Dim КудаВставить27 As Range

NextRow = Worksheets("Локальная вибрация2").Cells(Rows.Count, 2).End(xlUp).Row + 1
Set КудаВставить14 = Worksheets("Локальная вибрация2").Range("C" & NextRow)
Set КудаВставить15 = Worksheets("Локальная вибрация2").Range("D" & NextRow)
Set КудаВставить16 = Worksheets("Локальная вибрация2").Range("E" & NextRow)
Set КудаВставить17 = Worksheets("Локальная вибрация2").Range("F" & NextRow)
Set КудаВставить18 = Worksheets("Локальная вибрация2").Range("G" & NextRow)
Set КудаВставить19 = Worksheets("Локальная вибрация2").Range("H" & NextRow)
Set КудаВставить20 = Worksheets("Локальная вибрация2").Range("I" & NextRow)
Set КудаВставить21 = Worksheets("Локальная вибрация2").Range("J" & NextRow)
Set КудаВставить22 = Worksheets("Локальная вибрация2").Range("K" & NextRow)
Set КудаВставить23 = Worksheets("Локальная вибрация2").Range("L" & NextRow)
Set КудаВставить24 = Worksheets("Локальная вибрация2").Range("M" & NextRow)
Set КудаВставить25 = Worksheets("Локальная вибрация2").Range("N" & NextRow)
Set КудаВставить26 = Worksheets("Локальная вибрация2").Range("O" & NextRow)
Set КудаВставить27 = Worksheets("Локальная вибрация2").Range("P" & NextRow)

КудаВставить14.Value = TB_LV1.Value
КудаВставить15.Value = TB_LV2.Value
КудаВставить16.Value = TB_LV3.Value
КудаВставить17.Value = TB_LV4.Value
КудаВставить18.Value = TB_LV5.Value
КудаВставить19.Value = TB_LV6.Value
КудаВставить20.Value = TB_LV7.Value
КудаВставить21.Value = TB_LV8.Value
КудаВставить22.Value = TB_LV9.Value
КудаВставить23.Value = TB_LV10.Value
КудаВставить24.Value = TB_LV11.Value
КудаВставить25.Value = TB_LV12.Value
КудаВставить26.Value = TB_LV13.Value
КудаВставить27.Value = TB_LV13.Value

TB_LV14.Value = " "
TB_LV15.Value = " "
TB_LV16.Value = " "
TB_LV17.Value = " "
TB_LV18.Value = " "
TB_LV19.Value = " "
TB_LV20.Value = " "
TB_LV21.Value = " "
TB_LV22.Value = " "
TB_LV23.Value = " "
TB_LV24.Value = " "
TB_LV25.Value = " "
TB_LV26.Value = " "
TB_LV27.Value = " "

'UF_LV.Hide
End Sub
Ищет последнюю пустую строку и заполняет колонки. Но нужно, чтобы начинал с определенного столбца и строки. Данные могут вводиться многократно, Запись данных должна вестись в конец таблицы. И еще вопрос: Как после очистить все данные введенные в таблицу. Например: я ввел 10 строк, а в таблице должно остаться две, но они тоже должны быть пустые(очищенные). Надеюсь понятно объяснил
Petrov210217 вне форума   Ответить с цитированием
Старый 15.11.2018, 23:48   #8
IgorGO
МегаМодератор
СуперМодератор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Адрес: УКРАЇНА, Київ
Сообщений: 8,997
Репутация: 1710

icq: 7934250
skype: i2x0,5
По умолчанию

извините, ответить не могу - не смог дочитать
__________________
41001804815208 - Яндекс-деньги благодарности за удачные советы и решения можно отправлять прямо сюда)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума   Ответить с цитированием
Старый 16.11.2018, 06:04   #9
Petrov210217
Пользователь
 
Регистрация: 14.11.2018
Сообщений: 24
Репутация: 10
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
извините, ответить не могу - не смог дочитать
?????
Petrov210217 вне форума   Ответить с цитированием
Старый 16.11.2018, 12:13   #10
Казанский
Профессионал
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,062
Репутация: 819
По умолчанию

Цитата:
Сообщение от Petrov210217 Посмотреть сообщение
Например: я ввел 10 строк, а в таблице должно остаться две, но они тоже должны быть пустые(очищенные). Надеюсь понятно объяснил
Не-а
А эту простыню можно сложить так
Код:

Private Sub CB_LvSave1_Click()
Dim NextRow As Long, i As Long

  With Worksheets("Локальная вибрация2")
    NextRow = .Cells(.Rows.Count, 2).End(xlUp).Row + 1
    For i = 1 To 13
      .Cells(NextRow, i + 2).Value = Controls("TB_LV" & i).Value
    Next
  End With
  For i = 14 To 27
    Controls("TB_LV" & i).Value = " "
  Next

'UF_LV.Hide
End Sub

__________________
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
макрос_протягивание вверх от последней заполненной ячейки до первой в прерывающемся списке Alexsandrr Помощь студентам 2 08.10.2013 13:44
поиск последней заполненной стрки dedwar Microsoft Office Excel 1 27.04.2011 02:45
поиск последней заполненной ячейки, которая находится выше ячейки с формулой Akmal-Sharipov Microsoft Office Excel 3 11.01.2011 14:27
Формула значения последней (нижней) заполненной ячейки в столбце VictorM Microsoft Office Excel 16 09.09.2010 20:47
определение последней заполненной ячейки Bezdar Microsoft Office Excel 4 20.03.2009 10:55


08:33.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru