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

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

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

Ответ
 
Опции темы
Старый 19.11.2018, 19:25   #21
Petrov210217
Пользователь
 
Регистрация: 14.11.2018
Сообщений: 24
Репутация: 10
По умолчанию

В общем я немного изменил код кнопки записи данных в таблицу(методом мата и научного тыка), теперь данные записываются в таблицу, но в ее начало, а не конец.
Сначала создается строка, затем в нее записываются данные. Но теперь есть другой вопрос: нужен макрос для удаления этих(созданных) строк. Допустим я в таблицу записал 10 строк, нужен макрос для удаления этих 10 строк в таблице.
Вот код:
Private Sub CommandButton1_Click()
Dim NextRow As Long
Dim nn1 As Range
Dim nn2 As Range
Dim nn3 As Range
Dim nn4 As Range
Dim nn5 As Range

'NextRow = Worksheets("Лист2").Cells(Rows.Coun t, 6).End(xlUp).Row + 1
Range("A6").Select
Selection.EntireRow.Insert , CopyOrigin:=xlFormatFromLeftOrAbove
Set nn1 = Worksheets("Лист2").Range("C" & 6)
Set nn2 = Worksheets("Лист2").Range("D" & 6)
Set nn3 = Worksheets("Лист2").Range("E" & 6)
Set nn4 = Worksheets("Лист2").Range("F" & 6)
Set nn5 = Worksheets("Лист2").Range("G" & 6)

nn1.Value = TextBox1.Value
nn2.Value = TextBox2.Value
nn3.Value = TextBox3.Value
nn4.Value = TextBox4.Value
nn5.Value = TextBox5.Value

'очистить форму от текста
TextBox1.Value = " "
TextBox2.Value = " "
TextBox3.Value = " "
TextBox4.Value = " "
TextBox5.Value = " "

'закрыть окно
UserForm1.Hide
End Sub
__________________
Зарабатываю на форекс партнерке
Petrov210217 вне форума   Ответить с цитированием
Старый 19.11.2018, 19:39   #22
IgorGO
МегаМодератор
СуперМодератор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Адрес: УКРАЇНА, Київ
Сообщений: 8,999
Репутация: 1710

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

вместо того что в #21 пробуйте это:
Код:

Private Sub CommandButton1_Click()
  Dim i&:  Range("A6").EntireRow.Insert , CopyOrigin:=xlFormatFromLeftOrAbove
  For i = 1 To 5
    Worksheets("Лист2").cell(2 + i, 6) = Controls("TextBox" & i): Controls("TextBox" & i) = ""
  Next
  UserForm1.Hide
End Sub

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

Но как же сделать, чтоб данные в конец таблицы добавлялись?
__________________
Зарабатываю на форекс партнерке
Petrov210217 вне форума   Ответить с цитированием
Старый 19.11.2018, 19:52   #24
Petrov210217
Пользователь
 
Регистрация: 14.11.2018
Сообщений: 24
Репутация: 10
По умолчанию

У меня в этой строке показывает ошибку: Worksheets("Лист2").cell(2 + i, 6) = Controls("TextBox" & i): Controls("TextBox" & i) = ""
__________________
Зарабатываю на форекс партнерке
Petrov210217 вне форума   Ответить с цитированием
Старый 19.11.2018, 20:12   #25
IgorGO
МегаМодератор
СуперМодератор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Адрес: УКРАЇНА, Київ
Сообщений: 8,999
Репутация: 1710

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

там опечатка, извините
cell - не правильно
cells - правильно
__________________
41001804815208 - Яндекс-деньги благодарности за удачные советы и решения можно отправлять прямо сюда)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO на форуме   Ответить с цитированием
Старый 19.11.2018, 20:15   #26
IgorGO
МегаМодератор
СуперМодератор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Адрес: УКРАЇНА, Київ
Сообщений: 8,999
Репутация: 1710

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

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

В общем вот этот код работает, но удаляет только 1 последнюю строку в таблице, а надо, чтобы удалял все строки до строки 6( с конца к началу):
Цитата:
Private Sub CommandButton2_Click()
Dim NextRow As Long
NextRow = Worksheets("Лист2").Cells(Rows.Coun t, 6).End(xlUp).Row
Sheets("Лист2").Range("C" & NextRow).Delete
End Sub
__________________
Зарабатываю на форекс партнерке
Petrov210217 вне форума   Ответить с цитированием
Старый 19.11.2018, 20:35   #28
Petrov210217
Пользователь
 
Регистрация: 14.11.2018
Сообщений: 24
Репутация: 10
По умолчанию

Цитата:
какие данные, в конец какой таблицы?
Этот вопрос я вроде решил. спасибо за помощь!
__________________
Зарабатываю на форекс партнерке
Petrov210217 вне форума   Ответить с цитированием
Старый 20.11.2018, 17:22   #29
Petrov210217
Пользователь
 
Регистрация: 14.11.2018
Сообщений: 24
Репутация: 10
По умолчанию

Цитата:
Private Sub CommandButton2_Click()
Dim NextRow As Long
NextRow = Worksheets("Лист2").Cells(Rows.Coun t, 6).End(xlUp).Row
Sheets("Лист2").Range("C" & NextRow).Delete
End Sub
Помогите пожалуйста сделать так, что бы код удалял все созданные строки, а не одну. Нужен цикл удаляющий строки от строки NextRow до 6 строки
__________________
Зарабатываю на форекс партнерке
Petrov210217 вне форума   Ответить с цитированием
Старый 20.11.2018, 17:36   #30
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 24,614
Репутация: 5352
По умолчанию

Цитата:
Сообщение от Petrov210217 Посмотреть сообщение
Помогите пожалуйста сделать так, что бы код удалял все созданные строки, а не одну. Нужен цикл удаляющий строки от строки NextRow до 6 строки
Так устроит?

Код:

     Dim NextRow As Long
    'NextRow = 10
    NextRow = Worksheets("Лист2").Cells(Rows.Count, 6).End(xlUp).Row
    Rows("6:" & NextRow).Delete

Serge_Bliznykov вне форума   Ответить с цитированием
Ответ

Опции темы

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

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


20:23.


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

RusProfile.ru


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