Macro : Find Data Number in Only Cell Certainty in Multiple Sheets

muhammad susanto

Well-known Member
Joined
Jan 8, 2013
Messages
2,077
Office Version
  1. 365
  2. 2021
Platform
  1. Windows
hi all...

how to modify this code :
i want spesicifik find in only cell AD, row 14
Code:
Sub SearchAllSheets()    Dim ws As Worksheet
    Dim rFound As Range
    Dim strName As String
     
    On Error Resume Next
    strName = InputBox("What Name?")
    If strName = "" Then Exit Sub
    For Each ws In Worksheets
        With ws.UsedRange
            Set rFound = .Find(What:=strName, After:=.Cells(1, 1), LookIn:=xlValues, LookAt:=xlWhole)
            If Not rFound Is Nothing Then
                Application.Goto rFound, True
                Exit Sub
            End If
        End With
    Next ws
    On Error GoTo 0
     
     MsgBox "Value not found"
End Sub

thanks in advance...

m.susanto
 

Excel Facts

How to find 2nd largest value in a column?
MAX finds the largest value. =LARGE(A:A,2) will find the second largest. =SMALL(A:A,3) will find the third smallest
Like this?

Code:
Sub SearchAllSheets()

    Dim ws As Worksheet
    Dim rFound As Range
    Dim strName As String
     
    On Error Resume Next
    strName = InputBox("What Name?")
    If strName = "" Then Exit Sub
    For Each ws In Worksheets
        With ws.Range("AD14")
            Set rFound = .Find(What:=strName, After:=.Cells(1, 1), LookIn:=xlValues, LookAt:=xlPart)
            If Not rFound Is Nothing Then
                Application.Goto rFound, True
                Exit Sub
            End If
        End With
    Next ws
    On Error GoTo 0
     
     MsgBox "Value not found"
End Sub
 
Upvote 0
hello mrshl9898..

worked it ...

how to adding parameter if i found the same data/number in different sheets..the macro show msgbox "Find Next..., Find Next."

thanks again....
 
Upvote 0
Not a problem, is this what you were after?

Code:
Sub SearchAllSheets()

    Dim ws As Worksheet
    Dim rFound As Range
    Dim strName As String
     
    On Error Resume Next
    strName = InputBox("What Name?")
    If strName = "" Then Exit Sub
    For Each ws In Worksheets
        With ws.Range("AD14")
            Set rFound = .Find(What:=strName, After:=.Cells(1, 1), LookIn:=xlValues, LookAt:=xlPart)
            If Not rFound Is Nothing Then
                Application.Goto rFound, True
                MsgBox "Value found, find next"
            Else
                MsgBox "Value not found, checking next sheet"
            End If
        End With
    Next ws
    On Error GoTo 0
     
     MsgBox "Complete"
End Sub
 
Last edited:
Upvote 0
great!!..

how to skip "value not found..."i mean only founded...
like msgbox "value found, checking next sheet" cause in my sheets contains duplicate number in range "AD14"
many thanks
 
Upvote 0
Do you want to know if nothing is found though?

Code:
Sub SearchAllSheets()

    Dim ws As Worksheet
    Dim rFound As Range
    Dim strName As String
    Dim valfound As String
     
     
    valfound = 0
    On Error Resume Next
    strName = InputBox("What Name?")
    If strName = "" Then Exit Sub
    For Each ws In Worksheets
        With ws.Range("AD14")
            Set rFound = .Find(What:=strName, After:=.Cells(1, 1), LookIn:=xlValues, LookAt:=xlPart)
            If Not rFound Is Nothing Then
                Application.Goto rFound, True
                MsgBox "Value found, find next"
                valfound = 1
            End If
        End With
    Next ws
    On Error GoTo 0
     
     If valfound = 0 Then
     MsgBox "Value not found"
     End If
     
End Sub
 
Upvote 0
still not fully work..i mean for find number = 2, showing 2,23,32,42, etc,,,,,,
i want exactly number...
 
Upvote 0
Try this:

Code:
Sub SearchAllSheets()

    Dim ws As Worksheet
    Dim rFound As Range
    Dim strName As String
    Dim valfound As String
     
     
    valfound = 0
    On Error Resume Next
    strName = InputBox("What Name?")
    If strName = "" Then Exit Sub
    For Each ws In Worksheets
        If ws.Range("AD14").Value = strName Then
                ws.Activate
                Range("AD14").Select
                MsgBox "Value found, find next"
                valfound = 1
        End If
    Next ws
    On Error GoTo 0
     
     If valfound = 0 Then
     MsgBox "Value not found"
     End If
     
End Sub
 
Upvote 0

Forum statistics

Threads
1,223,227
Messages
6,170,853
Members
452,361
Latest member
d3ad3y3

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top