Возможно ли использовать список для изменения порядка строк на листе? Я искал в Интернете около часа без выступлений. Я использую следующий код для задачи:Excel VBA (userform) о ListBox
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Sheet1!A1:A15"
End Sub
Option Explicit
Const UP As Integer = -1
Const DOWN As Integer = 1
Private Sub SpinButton1_SpinUp()
If Me.ListBox1.ListCount > 1 Then
Call MoveListItem(UP, Me.ListBox1)
End If
End Sub
Private Sub SpinButton1_SpinDown()
If Me.ListBox1.ListCount > 1 Then
Call MoveListItem(DOWN, Me.ListBox1)
End If
End Sub
Private Sub MoveListItem(ByVal intDirection As Integer, _
ByRef ListBox1 As ListBox)
Dim intNewPosition As Integer
Dim strTemp As String
intNewPosition = ListBox1.ListIndex + intDirection
strTemp = ListBox1.List(intNewPosition)
If intNewPosition > -1 _
And intNewPosition < ListBox1.ListCount Then
'Swap listbox items
ListBox1.List(intNewPosition) = ListBox1.Value
ListBox1.List(intNewPosition - intDirection) = strTemp
ListBox1.Selected(intNewPosition) = True
End If
End Sub
Надежда может дать мне подсказку!
UPDATE !!
Что я хочу, если я, например, иметь эти значения в столбце в моем листе:
week1
week2
week3
week4
Тогда я хотел бы повторно создать порядок этих значений с помощью SpinButton в ListBox;
week2
week4
week1
week3
Что значит изменить порядок строк? сортировка? можете ли вы предоставить данные до и после? это поможет нам понять, что вы хотите делать. – guitarthrower
@guitarthrower Я обновил свой вопрос, надеюсь, что вы поможете! –