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

Вход

Регистрация

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

 

= Мир MS Excel/Перенос выделенной строки с одного листа на другой - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Перенос выделенной строки с одного листа на другой (Макросы/Sub)
Перенос выделенной строки с одного листа на другой
den45444 Дата: Вторник, 16.02.2016, 21:40 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Добрый вечер.
Есть макрос на перенос строк с одного места на другое. Действие происходит в одном активном листе.
Подскажите пожалуйста, как переделать макрос, чтобы с одного листа перенести на другой лист активной книги по такому же принципу.
[vba]
Код
Sub перенос_строк()
    Dim ra As Range: Set ra = Selection
    msg1 = "1)Выделите строки, которые нужно перенести; 2)Нажмите Ctrl; 3)Выделите еще одно строку, над которой нужно вставить; 4)Нажмите кнопку <Перенос>"
    If ra.Areas.Count <> 2 Then MsgBox msg1, vbCritical, "Ошибка": Exit Sub
    ra.Areas(1).Copy
    ra.Areas(2).Insert Shift:=xlDown
    ra.Areas(1).Delete
End Sub
[/vba]


Сообщение отредактировал den45444 - Вторник, 16.02.2016, 22:29
 
Ответить
СообщениеДобрый вечер.
Есть макрос на перенос строк с одного места на другое. Действие происходит в одном активном листе.
Подскажите пожалуйста, как переделать макрос, чтобы с одного листа перенести на другой лист активной книги по такому же принципу.
[vba]
Код
Sub перенос_строк()
    Dim ra As Range: Set ra = Selection
    msg1 = "1)Выделите строки, которые нужно перенести; 2)Нажмите Ctrl; 3)Выделите еще одно строку, над которой нужно вставить; 4)Нажмите кнопку <Перенос>"
    If ra.Areas.Count <> 2 Then MsgBox msg1, vbCritical, "Ошибка": Exit Sub
    ra.Areas(1).Copy
    ra.Areas(2).Insert Shift:=xlDown
    ra.Areas(1).Delete
End Sub
[/vba]

Автор - den45444
Дата добавления - 16.02.2016 в 21:40
Апострофф Дата: Среда, 17.02.2016, 07:32 | Сообщение № 2
Группа: Пользователи
Ранг: Участник
Сообщений: 71
Репутация: 26 ±
Замечаний: 0% ±

Excel 2003
Примерно так -
[vba]
Код
Sub перенос_строк_на_другой_лист()
    Dim rs As Range: Set rs = Application.InputBox("Выделите строки, которые нужно перенести", "перенос_строк_на_другой_лист", , , , , , 8) 'Selection
    Dim rd As Range: Set rd = Application.InputBox("Выделите еще однO строку, над которой нужно вставить", "перенос_строк_на_другой_лист", , , , , , 8) 'Selection
    rs.Copy
    rd.Insert Shift:=xlDown
    rs.Delete
End Sub
[/vba](Selection может принадлежать только одному листу, кажется?)
 
Ответить
СообщениеПримерно так -
[vba]
Код
Sub перенос_строк_на_другой_лист()
    Dim rs As Range: Set rs = Application.InputBox("Выделите строки, которые нужно перенести", "перенос_строк_на_другой_лист", , , , , , 8) 'Selection
    Dim rd As Range: Set rd = Application.InputBox("Выделите еще однO строку, над которой нужно вставить", "перенос_строк_на_другой_лист", , , , , , 8) 'Selection
    rs.Copy
    rd.Insert Shift:=xlDown
    rs.Delete
End Sub
[/vba](Selection может принадлежать только одному листу, кажется?)

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

Excel 2010
Апострофф, Благодарю за помощь! А нельзя как-нибудь сразу перенести через Cltr? Если убрать Application.InputBox, то начинает ругаться.
 
Ответить
СообщениеАпострофф, Благодарю за помощь! А нельзя как-нибудь сразу перенести через Cltr? Если убрать Application.InputBox, то начинает ругаться.

Автор - den45444
Дата добавления - 17.02.2016 в 12:34
Апострофф Дата: Среда, 17.02.2016, 12:41 | Сообщение № 4
Группа: Пользователи
Ранг: Участник
Сообщений: 71
Репутация: 26 ±
Замечаний: 0% ±

Excel 2003
Цитата Апострофф, 17.02.2016 в 07:32, в сообщении № 2
Selection может принадлежать только одному листу
Никакой Ctrl не поможет.
 
Ответить
Сообщение
Цитата Апострофф, 17.02.2016 в 07:32, в сообщении № 2
Selection может принадлежать только одному листу
Никакой Ctrl не поможет.

Автор - Апострофф
Дата добавления - 17.02.2016 в 12:41
den45444 Дата: Среда, 17.02.2016, 12:42 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Апострофф, Пока работает вот такой вариант:
[vba]
Код
Sub перенос_строк_на_другой_лист()
    Dim rs As Range: Set rs = Selection
    Dim rd As Range: Set rd = Application.InputBox("Выделите еще однO строку, над которой нужно вставить", "перенос_строк_на_другой_лист", , , , , , 8) 'Selection
    rs.Copy
    rd.Insert Shift:=xlDown
    rs.Delete
End Sub
[/vba]
 
Ответить
СообщениеАпострофф, Пока работает вот такой вариант:
[vba]
Код
Sub перенос_строк_на_другой_лист()
    Dim rs As Range: Set rs = Selection
    Dim rd As Range: Set rd = Application.InputBox("Выделите еще однO строку, над которой нужно вставить", "перенос_строк_на_другой_лист", , , , , , 8) 'Selection
    rs.Copy
    rd.Insert Shift:=xlDown
    rs.Delete
End Sub
[/vba]

Автор - den45444
Дата добавления - 17.02.2016 в 12:42
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Перенос выделенной строки с одного листа на другой (Макросы/Sub)
Страница 1 из 11
Поиск:

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