Гость
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel. Вставить или удалить строку в таблицу. VBA / 17 сообщений из 17, страница 1 из 1
08.10.2008, 11:36
    #35582533
Kostroff
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
Добрый день! Нужна помощь в освоении VBA. Есть строки с данными, формулами и форматированием. В первом столбце строки стоит кнопка добавить, во втором удалить. В остальных столбцах данные. Необходимо: При нажатии на кнопку «добавить», соответствующую строку необходимо скопировав, вставить ниже той, в которой нажали кнопку. Если нажать на кнопку «удалить», строка, в которой нажали кнопку удаляется из таблицы. Вставлять строки нужно как в конце таблицы, так и в середине.
Понимаю, что это не сложно, но знаний не хватает, как осуществить. Конкретно не знаю, как определить номер строки, в которой находится нажимаемая кнопка, и как описать вставку в строку ниже. Что-то изменится в макросе, если вместо кнопок в строке будут стоять картинки, на которые эти макросы назначаются? Прошу помощи.
...
Рейтинг: 0 / 0
08.10.2008, 14:35
    #35583287
Kostroff
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
Кто-нибудь поможет? Очень надо!
...
Рейтинг: 0 / 0
08.10.2008, 15:10
    #35583401
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
А зачем вам кнопки на каждой строке? Для красоты? Или не дает покоя дизайн некоторых сайтов? :)

Вообще-то, требуется всего две кнопки и их функционал, привязанный к текущей ячейке.
Выбрали ячейку - нажали "Добавить" - строка вставилась. Так же и с удалением.
...
Рейтинг: 0 / 0
08.10.2008, 16:02
    #35583584
Kostroff
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
AndreTMА зачем вам кнопки на каждой строке?
Абсолютно незачем! :) У Вас всё получилось красиво и лаконично. То, что нужно. Спасибо!
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
06.09.2010, 08:15
    #36830753
qazwsx11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
А как не копировать, просто добавить пустую ячейку в самой конце этой таблице?
...
Рейтинг: 0 / 0
06.09.2010, 23:11
    #36833028
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
qazwsx11А как не копировать, просто добавить пустую ячейку в самой конце этой таблице?
Код: plaintext
1.
Rows(UsedRange.Rows.Count).Copy Rows(UsedRange.Rows.Count +  1 )
Rows(UsedRange.Rows.Count).ClearContents
...
Рейтинг: 0 / 0
05.03.2011, 11:26
    #37150607
Wizlock
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
Для полного счастья подскажите как из примера выше в конкретную ячейку внести нужное мне значение, т.е. есть кнопки "1", "2", "3"; я хочу скопировать строку под выделенную ячейку, но чтобы скажем 3-я ячейка имела значение в зависимости от нажатой кнопки.
...
Рейтинг: 0 / 0
05.03.2011, 23:43
    #37151664
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
Дайте пример таблички. Поскольку "Ячейка 3" - это понятие абстрактное в терминах Office-VBA.
...
Рейтинг: 0 / 0
09.03.2011, 11:54
    #37155014
-VIPer-
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Private Sub Удаление_строки_Click()
Dim ea As Excel.Application
Dim ewb As Excel.Workbook
Dim ews As Excel.Worksheet

Set ewb = GetObject("C:\1.xls")
Set ews = ewb.ActiveSheet
ews.Rows( 1 ).Delete
End Sub

Задача:
В аксесе сформирована таблица, с помощью макроса таблица экспортирована в excel
Требуется после создания файла удалить ПЕРВУЮ строку
Пишу код (см. выше) - после выполнения кода, открываю ручками файл, все без изменений!
Что я делаю не так?!
сегодня, 11:52 [10341995] Ответить | Цитировать Сообщить модератору
...
Рейтинг: 0 / 0
09.03.2011, 12:10
    #37155084
The_Prist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
-VIPer-,

Вы не сохраняете файл после сделанных изменений. Ну и еще парочка нужных дополнений в коде.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Private Sub Удаление_строки_Click()
Dim ea As Excel.Application
Dim ewb As Excel.Workbook
Dim ews As Excel.Worksheet

Set ewb = GetObject("C:\1.xls")
Set ews = ewb.ActiveSheet
ews.Rows( 1 ).Delete
'закрываем открытую ранее книгу с сохранением изменений
ewb.Close  1 
ea.Quit'закрываем открытое программно приложение
'убираем переменные на объекты из памяти
Set ews = Nothing: Set ewb = Nothing: Set ea = Nothing
End Sub
...
Рейтинг: 0 / 0
09.03.2011, 12:23
    #37155136
-VIPer-
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
The_Prist,

Эээээ... ea.Quit - а где я его открывал?
...
Рейтинг: 0 / 0
09.03.2011, 13:01
    #37155272
-VIPer-
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
Всем спасибо - разобрался!
Вот так все работает!

Вот так все чики-пики )

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Private Sub Удаление_строки_Click()
Dim XLAp As Excel.Application
Dim XLWb As Excel.Workbook
Dim XLWs As Excel.Worksheet

Set XLAp = CreateObject(Class:="Excel.Application")
Set XLWb = XLAp.Workbooks.Open("С:\1.xls")
Set XLWs = XLWb.ActiveSheet
    
XLWs.Rows( 1 ).Delete
XLWb.Save
XLAp.Quit

Set XLWs = Nothing
Set XLWb = Nothing
Set XLAp = Nothing
End Sub
...
Рейтинг: 0 / 0
10.03.2011, 08:54
    #37156678
Wizlock
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
Даю пример.
Нужна отдельная кнопка, на добавление строки с "Итогом" и "Формулой итога"
...
Рейтинг: 0 / 0
27.05.2011, 15:06
    #37282699
_unkind_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
AndreTMА зачем вам кнопки на каждой строке? Для красоты? Или не дает покоя дизайн некоторых сайтов? :)

Вообще-то, требуется всего две кнопки и их функционал, привязанный к текущей ячейке.
Выбрали ячейку - нажали "Добавить" - строка вставилась. Так же и с удалением.

Подскажите, а как добавить строку, таким же образом, но присутствует Range.
Пишет ошибку, метод insert из класса Range завершен неверно
...
Рейтинг: 0 / 0
28.05.2011, 13:38
    #37283617
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
То есть вы пытаетесь вставить (скопировав) несколько строк?
Можно, например, сделать так: сначала вставить нужное количество пустых строк циклом, затем использовать Range(<весь исходный диапазон>).Copy Destination:=<первая ячейка нового диапазона>
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
09.10.2017, 09:36
    #39533200
tujn08
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
Товарищи!
Помогите очень надо. VBA вообще не знаю, копирую то, что нахожу - вот не нашел.
задача: спецификация.

есть лист ввод данных - куда вводят данные построчно
(№ строки | Наименование вида работ | Ед. Изм. | Количество | Примечание)
многострочные ячейки подогнанные под текст.

проблема в том, что на печать А4 строки надо делить что б штамп не уходил на другой лист или поднимался выше.
1. высоту трок надо всегда подгонять
2. количество строк всегда разное (удалять или добавлять)
3. из-за штампа ячейки объедены (стобцы)
4. два разный штампа большой и маленький
5. желательно все листы разместить на одной вклдаке, что б печатать было удобно

нужны функции:

удалять/добавлять строки если первый штамп выходит за границы печати А4

как я это представляю:
1 подгоняю строки на вкладке ввода данных - запонимаю данные и высоту
2 записываю данные и выставляю высоту
3 суммирую высоту строк (700 пунктов как я посчитал)
4 если 700 и не дошли до конца штампа - удалять строки
5 если не 700 и дошли до конца штампа - добавить строки
6 почти 700 и дошли до конца - поседения строка пустая и высоту подогнать.

Пример прикладываю, что- то пытался - не получается. Второй макрос
...
Рейтинг: 0 / 0
09.10.2017, 12:56
    #39533362
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Вставить или удалить строку в таблицу. VBA
tujn08,

Вам с радостью помогут в разделе Работа .
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel. Вставить или удалить строку в таблицу. VBA / 17 сообщений из 17, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]