Reemplaza este código:
Me.ListBox.RowSource = "datos!A2:F100" Define donde están los datos
Me.ListBox.ColumnCount = 6 Define la cantidad de columnas
Me.ListBox.ColumnWidths = "55;55;55;55;55;55;55" Define el ancho de las columnas
Me.ListBox.ColumnHeads = True Hace que los títulos de los datos sean visible
Por esto. Entendiendo que el número de cerdo está en la columna B.
Private Sub CommandButton1_Click()
Dim i As Long, n As Long, lr As Long
Dim shA As Worksheet, shD As Worksheet
Dim Num As Variant
Dim f As Range, rng As Range
'
Set shA = Sheets("Asignados")
Set shD = Sheets("Datos")
'
lr = shA.Range("A" & Rows.Count).End(3).Row + 1
'
'Valida combos
If cbo_cliente.ListIndex = -1 Then
MsgBox "Falta el cliente", vbCritical, "ASIGNADOS"
cbo_cliente.SetFocus
Exit Sub
End If
'pasar los datos del listbox a la hoja "Asignados"
For i = 0 To ListBox.ListCount - 1
If ListBox.Selected(i) Then
shA.Range("A" & lr).Value = cbo_cliente.Value
shA.Range("B" & lr).Value = ListBox.List(i, 0)
shA.Range("C" & lr).Value = ListBox.List(i, 1)
shA.Range("D" & lr).Value = ListBox.List(i, 2)
shA.Range("E" & lr).Value = ListBox.List(i, 3)
shA.Range("F" & lr).Value = ListBox.List(i, 4)
shA.Range("G" & lr).Value = cbo_camion.Value
shA.Range("H" & lr).Value = cbo_matadero.Value
'
n = n + 1
lr = lr + 1
'
Num = ListBox.List(i, 1)
Set f = shD.Range("B:B").Find(Num, , xlValues, xlWhole, , , False)
If Not f Is Nothing Then
If rng Is Nothing Then Set rng = f Else Set rng = Union(rng, f)
End If
End If
Next
'
If n > 0 Then
rng.EntireRow.Delete
Else
MsgBox "No seleccionaron registros", vbExclamation, "ASIGNADOS"
End If
End Sub
'
Private Sub UserForm_Activate()
Dim lr As Long
lr = Sheets("datos").Range("A" & Rows.Count).End(3).Row
Me.ListBox.RowSource = "datos!A2:F" & lr
Me.ListBox.ColumnCount = 6
Me.ListBox.ColumnWidths = "55;55;55;55;55;55;55"
Me.ListBox.ColumnHeads = True
End Sub
[Comenta si tienes alguna duda.