Sim, você pode criar uma macro VBA para isso.
Eu criaria um botão e, no evento de clique, primeiro verifique se o workbook_b está aberto e use o seguinte código para copiar as linhas onde custid está em workbook_a, mas não no workbook_b (observe que no final você acabou de acabar com uma cópia workbook_a no workbook_b, então seria muito mais simples copiar todo o intervalo de dados).
Dim i As Integer, workingCol1 As Integer, workingCol2 As Integer
Dim workingRange1 As Range, workingRange2 As Range
workingCol1 = WorksheetFunction.Match("custid", Sheets("Sheet1").UsedRange.Rows(1), 0)
Set workingRange1 = Sheets("Sheet1").Range("AllCustomers").Columns(workingCol1)
workingCol2 = WorksheetFunction.Match("custid", Sheets("Sheet2").UsedRange.Rows(1), 0)
Set workingRange2 = Sheets("Sheet2").Range("CriticalCustomers").Columns(workingCol2)
For i = 2 To workingRange1.Rows.Count
If Not IsError(Application.Match(workingRange1.Cells(i, 1), workingRange2, 0)) Then
workingRange1.Rows(i).EntireRow.Copy
Sheets("Sheet2").UsedRange.Rows(Sheets("Sheet2").UsedRange.Rows.Count).Offset(1, 0).EntireRow.PasteSpecial (xlPasteValues)
End If
Next i
Se você realmente só precisa de uma célula copiada, então você poderia fazê-lo com uma função de planilha, mas seria um pouco complicado.