Добрый вечер. Есть макрос на перенос строк с одного места на другое. Действие происходит в одном активном листе. Подскажите пожалуйста, как переделать макрос, чтобы с одного листа перенести на другой лист активной книги по такому же принципу. [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]
Добрый вечер. Есть макрос на перенос строк с одного места на другое. Действие происходит в одном активном листе. Подскажите пожалуйста, как переделать макрос, чтобы с одного листа перенести на другой лист активной книги по такому же принципу. [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
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 может принадлежать только одному листу, кажется?)Апострофф
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