| Sniper1 
 
  
 Member
 | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору 
 Цитата:
 | Sniper1 
 Код:
 Private Sub Workbook_Open()
 With Application
 .OnKey "^+{Up}", "prcRowUp"
 .OnKey "^+{Down}", "prcRowDown"
 End With
 End Sub
 
 
 Sub prcRowUp()
 Dim oRow As Range, oTable As Range, oCell As Range
 Set oTable = ActiveSheet.Range(Cells(4, 1), Cells(16, 9))
 Set oCell = ActiveCell
 With Application
 .EnableEvents = False
 .ScreenUpdating = False
 With oTable
 If Not Intersect(oCell, oTable) Is Nothing Then
 Set oRow = Intersect(oTable, oCell.EntireRow)
 With oRow
 If .EntireRow.Row > oTable.Rows(1).EntireRow.Row Then
 .Cut
 .Offset(-1).Insert 'Shift:=xlDown
 .Offset(1).Insert Shift:=xlDown
 .Copy
 .Offset(1).PasteSpecial xlPasteFormats
 .Offset(2).Copy
 .PasteSpecial xlPasteFormats
 .Offset(1).Copy
 .Offset(2).PasteSpecial xlPasteFormats
 .Offset(1).Delete Shift:=xlUp
 End If
 End With
 End If
 End With
 oCell.Select
 .EnableEvents = True
 .ScreenUpdating = True
 End With
 End Sub
 Sub prcRowDown()
 Dim oRow As Range, oTable As Range, oCell As Range
 Set oTable = ActiveSheet.Range(Cells(4, 1), Cells(16, 9))
 Set oCell = ActiveCell
 With Application
 .EnableEvents = False
 .ScreenUpdating = False
 With oTable
 If Not Intersect(oCell, oTable) Is Nothing Then
 Set oRow = Intersect(oTable, oCell.EntireRow)
 With oRow
 If .EntireRow.Row < oTable.Rows(13).EntireRow.Row Then
 .Cut
 .Offset(2).Insert 'Shift:=xlDown
 .Insert Shift:=xlDown
 .Copy
 .Offset(-1).PasteSpecial xlPasteFormats
 .Offset(-2).Copy
 .PasteSpecial xlPasteFormats
 .Offset(-1).Copy
 .Offset(-2).PasteSpecial xlPasteFormats
 .Offset(-1).Delete Shift:=xlUp
 End If
 End With
 End If
 End With
 oCell.Select
 .EnableEvents = True
 .ScreenUpdating = True
 End With
 End Sub
 
 
 Добавлено:
 Этот код исключительно под Ваши таблицы. Причём в том виде, в котором Вы их представили, включая кол-во строк. В "новую строку" копируется всё, кроме форматов - как Вы и хотели.
 | 
 
 Огромное спасибо Ув. vlth но чуть чуть не подходит ваш вариант. таблица не статическая, строки будут добавляться иногда или даже удаляться. ещё раз благодарю за проделанную не маленькую работу.
 
 
 Цитата:
 | Одна голова хорошо, а две лучше. А три, это уже Змей горыныч | 
 А тем более три головы как ваши с vlth это вообще атас.
 
 
 Цитата:
 | Цитата: формулы  у меня тока в столбе "H". Подумайте на досуге как решить и эту задачу.
 
 Вот вам полное решение, учитывая именно столбец "H", а также учитывая тот факт, что в столбце "H" по строкам одинаковые формулы.
 
 Код:
 | 
 Идеальный вариант просто не к чему придраться.
 
 Хе, только начал радоваться а тут заметил кое что, что не отрабатывается. Короче в столбе "A" у меня там гиперссылки будут на фотографии клиентов, каждая строка это клиент. так вот надо что б гиперссылки бежали за своими клиентами то есть за строками. Прикладываю файл для наглядности.
 |