Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Добавление строки между 2-х строк - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Добавление строки между 2-х строк (Макросы/Sub)
Добавление строки между 2-х строк
den45444 Дата: Пятница, 24.07.2015, 11:00 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Здравствуйте.
Помогите написать макрос для такой задачи:
- между 8 и 9 строк добавить строку с формулами от 8-й строки, при этом нижняя часть таблицы должна смещаться вниз.
Прилагаю файл.
К сообщению приложен файл: 8830251.xlsx (12.3 Kb)
 
Ответить
СообщениеЗдравствуйте.
Помогите написать макрос для такой задачи:
- между 8 и 9 строк добавить строку с формулами от 8-й строки, при этом нижняя часть таблицы должна смещаться вниз.
Прилагаю файл.

Автор - den45444
Дата добавления - 24.07.2015 в 11:00
SLAVICK Дата: Пятница, 24.07.2015, 11:07 | Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Можно и без макроса:
Выделяем полностью 8-ю строку (Можно нажать Shift + пробел)
Нажимаем Ctrl + C
Нажимаем стрелку вниз
Нажимаем Ctrl + +
Все :D
А макрос вот:
[vba]
Код
Sub Макрос3()
     Rows("8:8").Copy
     Range("A9").Insert Shift:=xlDown
End Sub
[/vba]


Иногда все проще чем кажется с первого взгляда.
 
Ответить
СообщениеМожно и без макроса:
Выделяем полностью 8-ю строку (Можно нажать Shift + пробел)
Нажимаем Ctrl + C
Нажимаем стрелку вниз
Нажимаем Ctrl + +
Все :D
А макрос вот:
[vba]
Код
Sub Макрос3()
     Rows("8:8").Copy
     Range("A9").Insert Shift:=xlDown
End Sub
[/vba]

Автор - SLAVICK
Дата добавления - 24.07.2015 в 11:07
den45444 Дата: Пятница, 24.07.2015, 11:15 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
SLAVICK, Благодарю за скорый ответ.
А как можно вставлять строку над 9-й строкой? Или лучше, чтобы программа нашла ячейку с надписью "Итого(этап№1):" и выше нее вставил строку. Такое вообще можно?
 
Ответить
СообщениеSLAVICK, Благодарю за скорый ответ.
А как можно вставлять строку над 9-й строкой? Или лучше, чтобы программа нашла ячейку с надписью "Итого(этап№1):" и выше нее вставил строку. Такое вообще можно?

Автор - den45444
Дата добавления - 24.07.2015 в 11:15
SLAVICK Дата: Пятница, 24.07.2015, 11:23 | Сообщение № 4
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
А как можно вставлять строку над 9-й строкой?

Так оно и вставляет над 9-й строкой а 9-я строка съезжает на 10-ю.... :o
Можно конечно:
[vba]
Код
Sub Макрос3()
     Rows("8:8").Copy
     Columns("A:A").Find(What:="Итого (этап №1):", After:=Cells(1, 1), LookIn:= _
         xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
         xlNext, MatchCase:=False, SearchFormat:=False).Insert Shift:=xlDown
End Sub
[/vba]
К сообщению приложен файл: 8830251-1-.xlsm (21.5 Kb)


Иногда все проще чем кажется с первого взгляда.
 
Ответить
Сообщение
А как можно вставлять строку над 9-й строкой?

Так оно и вставляет над 9-й строкой а 9-я строка съезжает на 10-ю.... :o
Можно конечно:
[vba]
Код
Sub Макрос3()
     Rows("8:8").Copy
     Columns("A:A").Find(What:="Итого (этап №1):", After:=Cells(1, 1), LookIn:= _
         xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
         xlNext, MatchCase:=False, SearchFormat:=False).Insert Shift:=xlDown
End Sub
[/vba]

Автор - SLAVICK
Дата добавления - 24.07.2015 в 11:23
den45444 Дата: Пятница, 24.07.2015, 11:32 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
SLAVICK, благодарю.
Rows("8:8").Copy - копирует 8-ю строку, если я правильно понял. А как прописать, чтобы копировалась та строка, которая находится выше строки с надписью "Итого (этап №1):" ?
 
Ответить
СообщениеSLAVICK, благодарю.
Rows("8:8").Copy - копирует 8-ю строку, если я правильно понял. А как прописать, чтобы копировалась та строка, которая находится выше строки с надписью "Итого (этап №1):" ?

Автор - den45444
Дата добавления - 24.07.2015 в 11:32
SLAVICK Дата: Пятница, 24.07.2015, 11:47 | Сообщение № 6
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Вот:
[vba]
Код
Sub Макрос3()
Dim r As Range
      Set r = Columns("A:A").Find(What:="Итого (этап №1):", After:=Cells(1, 1), LookIn:= _
         xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
         xlNext, MatchCase:=False, SearchFormat:=False)
      r.Offset(-1, 0).EntireRow.Copy
      r.Insert Shift:=xlDown
End Sub
[/vba]
К сообщению приложен файл: 1433587.xlsm (22.6 Kb)


Иногда все проще чем кажется с первого взгляда.
 
Ответить
СообщениеВот:
[vba]
Код
Sub Макрос3()
Dim r As Range
      Set r = Columns("A:A").Find(What:="Итого (этап №1):", After:=Cells(1, 1), LookIn:= _
         xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
         xlNext, MatchCase:=False, SearchFormat:=False)
      r.Offset(-1, 0).EntireRow.Copy
      r.Insert Shift:=xlDown
End Sub
[/vba]

Автор - SLAVICK
Дата добавления - 24.07.2015 в 11:47
den45444 Дата: Пятница, 24.07.2015, 11:56 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
SLAVICK, работает :) благодарю.
Нда.. теперь появился аппетит
Теперь хочется добавить макрос удалить таким же методом строку находящуюся над строкой "Итого (этап №1):".
 
Ответить
СообщениеSLAVICK, работает :) благодарю.
Нда.. теперь появился аппетит
Теперь хочется добавить макрос удалить таким же методом строку находящуюся над строкой "Итого (этап №1):".

Автор - den45444
Дата добавления - 24.07.2015 в 11:56
SLAVICK Дата: Пятница, 24.07.2015, 12:09 | Сообщение № 8
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Удалить:
[vba]
Код
r.Offset(-1, 0).EntireRow.Delete Shift:=xlUp
[/vba]
Только смысл? И вообще, читаем rules :
Другой вопрос- другая тема ;)


Иногда все проще чем кажется с первого взгляда.
 
Ответить
СообщениеУдалить:
[vba]
Код
r.Offset(-1, 0).EntireRow.Delete Shift:=xlUp
[/vba]
Только смысл? И вообще, читаем rules :
Другой вопрос- другая тема ;)

Автор - SLAVICK
Дата добавления - 24.07.2015 в 12:09
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Добавление строки между 2-х строк (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!