I am new to VBA and UserForms.
I have a ComboBox where the user will enter a unique Sales Order # (SalesOrder). I want my form to take this input and find it in the workbook and then update the status with the user's inputs in later ComboBoxes (CommentBox & OrderStatus). The issue I am facing is the actual code to find the Sales Order # in the workbook. I've tried what is seen below in several different variations.
If I replace all the ComboBox inputs with the actual inputs as a string, the code runs fine in a module.
Ideally, the code will loop through the sheet array finding all the lines with the Sales Order # and apply the inputs to the row.
Sub AddDataToList()
    Dim shtarray As Variant, shtname As Variant
    Dim Data As Worksheet, ws As Worksheet
    Dim wbk As Workbook
    Dim Strg As String
shtarray = Array("EMAUX", "Irene", "Cassandra", "Patricia", "EMREL", "Maria", "Jason", "Peedie", "MICRO", "PARTS", "NAVY", "DELTA")
Set wbk = ThisWorkbook
    For Each shtname In shtarray
        Set ws = Nothing
        On Error Resume Next
        Set ws = wbk.Worksheets(shtname)
        On Error GoTo 0
        If Not (ws Is Nothing) Then
            ActiveSheet.Cells.Find(StatusUpdateForm.SalesOrder.Text).Offset(0, 17).Select
            ActiveCell.Value = CommentBox.Text
            ActiveCell.Offset(0, 2).Value = OrderStatus.Text
        End If
    Next
    
    MsgBox SalesOrder.Value & "was updated."
End Sub
Thank you for the assistance!
More Information *** Below is the code for the Update command button. This is a standard two button system, one updates the records and the other cancels the form.
Private Sub UpdateButton_Click()
    
    If Not EverythingFilledIn Then Exit Sub
    
    Me.Hide
    
    AddDataToList
    
    Unload Me
    
End Sub
And code for the EverthingFilledIn
Private Function EverythingFilledIn() As Boolean
    Dim ctl As MSForms.Control
    Dim AnythingMissing As Boolean
    
    EverthingFilledIn = True
    AnythingMissing = False
    
    For Each ctl In Me.Controls
        If TypeOf ctl Is MSForms.TextBox Or TypeOf ctl Is MSForms.ComboBox Then
            If ctl.Value = "" Then
                ctl.BackColor = rgbPink
                Controls(ctl.Name & "Label").ForeColor = rgbRed
                If Not AnythingMissing Then ctl.SetFocus
                AnythingMissing = True
                EverythingFilledIn = False
            End If
        End If
    Next ctl
End Function
 
     
    