У меня есть курс в Удеме «Основные макросы Microsoft Excel и Excel VBA».
Где инструктор сделал макрос / процедуру сортировки, а я пытался создать кнопку «Сортировка».
Все работает хорошо, но после создания кнопки сортировки выдает ошибку:
Сбой класса диапазона метода сортировки
В любом случае я решил, но позже я получил еще одну ошибку, связаннуюк ссылкам.
Я очень плохо знаком с этим VBA и не смог его отладить.
Это VB Excel.
Public Sub UserSortInput()
Dim userInput As String
Dim promptMsg As String
Dim tryAgain As Integer
promptMsg = "Enter a numeric value to sort .. " & vbCrLf & _
"1 -> Sort by Division" & vbCrLf & _
"2 -> Sort by Category" & vbCrLf & _
"3 -> Sort by Total"
userInput = InputBox(promptMsg)
If userInput = "1" Then
DivisionSort
ElseIf userInput = "2" Then
CategorySort
ElseIf userInput = "3" Then
TotalSort
Else
tryAgain = MsgBox("Invalid Value! Try Again?", vbYesNo)
If tryAgain = 6 Then
UserSortInput
End If
End If
End Sub
Sub DivisionSort()
'
' Sort List by Division Ascending
'
'
Selection.Sort Key1:=Range("A4").Select, Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End Sub
Sub CategorySort()
'
' Sort List by Category Ascending
'
'
Selection.Sort Key1:=Range("B4").Select, Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End Sub
Sub TotalSort()
'
' Sort List by Total Sales Ascending
'
'
Selection.Sort Key1:=Range("F4").Select, Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End Sub