Я должен предварить это, сказав, что я очень плохо знаком с VBA и программированием в целом. Это один из моих первых макросов Excel.
Я хочу, чтобы этот макрос выполнял вырезку выделения (я вырезал много отдельных строк на этом листе), дождался его вставки и запуска функция ASAPUtilities Удалить все пустые строки на листе, из которого я вырезал строку. Мой текущий код вызывает сбой Excel, что неудивительно, так как я с трудом представляю, что я делаю:
Sub CutDelete() ' Keyboard Shortcut: Ctrl+Shift+X
Dim lastAction As String
If Application.CommandBars("Standard").Controls("&Undo").Enabled = True Then
lastAction = Application.CommandBars("Standard").Controls("&Undo").List(1)
End If
Selection.Cut
Dim Notpaste As String
If Left(lastAction, 5) <> "Paste" Then Notpaste = "True"
While Notpaste = "True"
Application.CutCopyMode = True
Wend
End Sub
Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
With ActiveWorkbook.Worksheets("Sheet1")
Application.Run "'ASAP Utilities.xlam'!ASAPRunProc", 232 'delete empty row
End With
End Sub