Hi,
data source table on data3 worksheet
pic

.
split data range columns in 2 groups:
group-1 visible columns 1-2-3-4-5
group-2 visible columns 1-2-6-7-8-9
pic

.

.
'=================
UserForm3

'
group-1

.
group-2

.
.====================
Step1
right click on Userform
and paste in
[Update-2.... 08-02-2024]
Option Explicit 'START
Dim ws As Worksheet
Dim r As Range
Dim nCol, x
Dim lo As Object
Dim vArr() 'new-new
'
Private Sub UserForm_Initialize()
Set ws = Sheets("data3") 'change source sheet name
Set lo = ws.ListObjects(1)
nCol = lo.ListColumns.Count
Me.ListBox1.ColumnCount = nCol
Me.ComboBox1.Font.Size = 15
Me.ComboBox2.Font.Size = 15
Me.ListBox1.Font.Size = 13
Me.Label1.Font.Size = 15
Me.Label2.Font.Size = 15
'
Me.ComboBox1.List = lo.ListColumns(1).DataBodyRange.Value 'new-new
'
vArr = Array("group-1", "group-2") 'new-new
Me.ComboBox2.List = vArr() 'new-new
'
Private Sub ComboBox1_Change()
Me.ComboBox2.Value = ""
Me.ListBox1.Clear
End Sub
'
Private Sub ComboBox2_Change()
If Me.ComboBox1.ListIndex = -1 Then 'new
Me.ComboBox1.SetFocus 'new
GoTo qaz 'new
End If 'new
Application.Run "z99_FilterData"
Select Case Me.ComboBox2.Value
Case vArr(0)'new-new
With Me.ListBox1
.ColumnWidths = "55;60;55;55;55;0;0;0;0" 'visible columns 1-2-3-4-5
End With
Case vArr(1) 'new-new
With Me.ListBox1
.ColumnWidths = "55;60;0;0;0;55;55;55;55" 'visible columns 1-2-6-7-8-9
End With
End Select
Me.ListBox1.Clear
With Me.ListBox1
For Each r In lo.ListColumns(1).Range
.AddItem r.Value
For x = 1 To nCol - 1
.List(.ListCount - 1, x) = r.Offset(, x).Value
Next x
Next r
End With
lo.Range.AutoFilter Field:=1'new
qaz: 'new
End Sub
'
Private Sub CommandButton1_Click()
lo.Range.AutoFilter Field:=1
Unload Me
End Sub 'END
'===================
Step2
in a regular Modue paste in the below 2 macros
Sub z99_FilterData()
Set ws = Sheets("data3") 'change sheet name as needed
Set lo = ws.ListObjects(1)
lo.ShowAutoFilterDropDown = False
lo.ShowAutoFilterDropDown = True
lo.Range.AutoFilter Field:=1, Criteria1:=UserForm3.ComboBox1.Value 'change userform name
End Sub
'add a button and assign the below macro:
Sub z99_Load_UserForm3()
UserForm3.Show
End Sub
'====================