I currently have 3 columns: item column, include, exclude. i have a check box assigned to the include and exclude column. i have text box's called include and exclude. anything i add to the Item column can be sent to the wanted text box, by selecting the corresponding check box and then executing code. the whole process is cumbersome, but it works. i want it to work better.

I would like to create a userform that has my list and checkboxes so that they are not tied to cells. I need assistance.

my current code has to be changed every time i want to add rows above, because the check boxes are assigned to cells:

Private Sub CommandButton1_Click()

TextBox1.Text = ""

If CheckBox1.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R37").Value & " - " & Range("S37").Value & ", "
End If

If CheckBox2.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R38").Value & " - " & Range("S38").Value & ", "
End If

If CheckBox3.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R39").Value & " - " & Range("S39").Value & ", "
End If

If CheckBox4.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R40").Value & " - " & Range("S40").Value & ", "
End If

If CheckBox5.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R41").Value & " - " & Range("S41").Value & ", "
End If

If CheckBox6.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R42").Value & " - " & Range("S42").Value & ", "
End If

If CheckBox7.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R43").Value & " - " & Range("S43").Value & ", "
End If

If CheckBox8.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R44").Value & " - " & Range("S44").Value & ", "
End If

If CheckBox9.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R45").Value & " - " & Range("S45").Value & ", "
End If

If CheckBox10.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R46").Value & " - " & Range("S46").Value & ", "
End If

If CheckBox11.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R47").Value & " - " & Range("S47").Value & ", "
End If

If CheckBox12.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R48").Value & " - " & Range("S48").Value & ", "
End If

If CheckBox13.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R49").Value & " - " & Range("S49").Value & ", "
End If

If CheckBox14.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R50").Value & " - " & Range("S50").Value & ", "
End If

If CheckBox15.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R51").Value & " - " & Range("S51").Value & ", "
End If

If CheckBox16.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R52").Value & " - " & Range("S52").Value & ", "
End If

If CheckBox17.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R53").Value & " - " & Range("S53").Value & ", "
End If

If CheckBox18.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R54").Value & " - " & Range("S54").Value & ", "
End If

If CheckBox19.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R55").Value & " - " & Range("S55").Value & ", "
End If

If CheckBox20.Value = True Then
    TextBox1.Text = TextBox1.Text & Range("R56").Value & " - " & Range("S56").Value & ", "
End If


TextBox2.Text = ""

If CheckBox21.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R37").Value & " - " & Range("S37").Value & ", "
End If

If CheckBox22.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R38").Value & " - " & Range("S38").Value & ", "
End If

If CheckBox23.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R39").Value & " - " & Range("S39").Value & ", "
End If

If CheckBox24.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R40").Value & " - " & Range("S40").Value & ", "
End If

If CheckBox25.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R41").Value & " - " & Range("S41").Value & ", "
End If

If CheckBox26.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R42").Value & " - " & Range("S42").Value & ", "
End If

If CheckBox27.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R43").Value & " - " & Range("S43").Value & ", "
End If

If CheckBox28.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R44").Value & " - " & Range("S44").Value & ", "
End If

If CheckBox29.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R45").Value & " - " & Range("S45").Value & ", "
End If

If CheckBox30.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R46").Value & " - " & Range("S46").Value & ", "
End If

If CheckBox31.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R47").Value & " - " & Range("S47").Value & ", "
End If

If CheckBox32.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R48").Value & " - " & Range("S48").Value & ", "
End If

If CheckBox33.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R49").Value & " - " & Range("S49").Value & ", "
End If

If CheckBox34.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R50").Value & " - " & Range("S50").Value & ", "
End If

If CheckBox35.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R51").Value & " - " & Range("S51").Value & ", "
End If

If CheckBox36.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R52").Value & " - " & Range("S52").Value & ", "
End If

If CheckBox37.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R53").Value & " - " & Range("S53").Value & ", "
End If

If CheckBox38.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R54").Value & " - " & Range("S54").Value & ", "
End If

If CheckBox39.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R55").Value & " - " & Range("S55").Value & ", "
End If

If CheckBox40.Value = True Then
    TextBox2.Text = TextBox2.Text & Range("R56").Value & " - " & Range("S56").Value & ", "
End If
End Sub

Private Sub TextBox1_Change()
With TextBox1
    .AutoSize = True
    .MultiLine = True
    .WordWrap = True
    .TopLeftCell.RowHeight = TextBox1.Height
    .Width = 685 'Set as required
End With
End Sub

Private Sub TextBox2_Change()
With TextBox2
    .AutoSize = True
    .MultiLine = True
    .WordWrap = True
    .TopLeftCell.RowHeight = TextBox2.Height
    .Width = 685 'Set as required
End With
End Sub

Private Sub TextBox3_Change()
With TextBox3
    .AutoSize = True
    .MultiLine = True
    .WordWrap = True
    .TopLeftCell.RowHeight = TextBox3.Height
    .Width = 685 'Set as required
End With
End Sub

Private Sub TextBox4_Change()
With TextBox4
    .AutoSize = True
    .MultiLine = True
    .WordWrap = True
    .TopLeftCell.RowHeight = TextBox4.Height
    .Width = 685 'Set as required
End With
End Sub

Private Sub TextBox5_Change()
With TextBox5
    .AutoSize = True
    .MultiLine = True
    .WordWrap = True
    .TopLeftCell.RowHeight = TextBox5.Height
    .Width = 685 'Set as required
End With
End Sub

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'Modified  8/26/2019  4:45:30 AM  EDT
If Target.Column = 15 Then
    Cancel = True
    Rows(Target.Row).Hidden = True
End If
Cancel = True
If Target.Address = Range("P10").Address Then Rows.Hidden = False
End Sub

Sub Add_Sheet()
    Worksheets("CO#0").Copy After:=Worksheets(Worksheets.Count)
    Worksheets(Worksheets.Count).Name = InputBox("New Name:")
    
End Sub