I have a huge excel sheet (more than 11K rows and just 11 columns) for customers. I'm trying to print ONLY names of an 1800 out of my 11K customers whom haven't received their ID cards which I have them in my office. Each ID card have a unique bar-code number, which is included in my excel sheet column 'H' And their names are in column 'F'
What I want to do is:
a msg box to enter each ID card bar-code using my bar-code reader. then ,searching in 'H' column , after finding the required customer, then copy what in 'F' column which is the name of the customer and past it to a NEW ROW in sheet 2.
So
Is there a function or a macro in excel sheet which could help me to do that? Or anyone have a better idea of doing that? I tried to recording a macro, but didn't work fine :'( any help would be appreciate
Kind regards :)
this code code do my job, but how could I change the fixed string to an input box, so I search for what I seeking for
Sub SearchForString()
Dim LSearchRow As Integer
Dim LCopyToRow As Integer
On Error GoTo Err_Execute
'Start search in row 4
LSearchRow = 4
'Start copying data to row 2 in Sheet2 (row counter variable)
LCopyToRow = 2
While Len(Range("A" & CStr(LSearchRow)).Value) > 0
'If value in column E = "Mail Box", copy entire row to Sheet2
If Range("E" & CStr(LSearchRow)).Value = "Mail Box" Then
'Select row in Sheet1 to copy
Rows(CStr(LSearchRow) & ":" & CStr(LSearchRow)).Select
Selection.Copy
'Paste row into Sheet2 in next row
Sheets("Sheet2").Select
Rows(CStr(LCopyToRow) & ":" & CStr(LCopyToRow)).Select
ActiveSheet.Paste
'Move counter to next row
LCopyToRow = LCopyToRow + 1
'Go back to Sheet1 to continue searching
Sheets("Sheet1").Select
End If
LSearchRow = LSearchRow + 1
Wend
'Position on cell A3
Application.CutCopyMode = False
Range("A3").Select
MsgBox "All matching data has been copied."
Exit Sub
Err_Execute:
MsgBox "An error occurred."
End Sub