جک تعجب می کند که چگونه می تواند یک کلمه یا عبارت خاص را جستجو کند و در یک مرحله تمام سلول های حاوی آن را برجسته کند تا بتواند آنها را بریده یا کپی کند و در جای دیگری جایگذاری کند.
انتخاب سلول های حاوی متنی که می خواهید استفاده کنید بسیار آسان است. برای انجام این کار می توانید از ویژگی استاندارد Find and Replace استفاده کنید. این مراحل را دنبال کنید:

شکل 1. تب Find از کادر محاوره ای Find and Replace.
- Ctrl+F را فشار دهید . اکسل تب Find از کادر محاوره ای Find and Replace را نمایش می دهد.
- با کلیک بر روی دکمه Options کادر گفتگو را باز کنید. (شکل 1 را ببینید.)
- در کادر Find What، متنی را که می خواهید پیدا کنید وارد کنید.
- از کنترلهای موجود در کادر محاورهای برای محدود کردن موارد مطابق دلخواه استفاده کنید.
- روی Find All کلیک کنید. کادر محاورهای برای نشان دادن تمام موارد منطبق شده گسترش مییابد.
- Ctrl+A را فشار دهید . این همه سلول هایی را که پیدا شده اند انتخاب می کند.
- روی Close کلیک کنید تا کادر محاوره ای رد شود.
خودشه. تا زمانی که در مرحله 4 روی Match Entire Cell Contents کلیک نکرده اید، اکسل تمام سلول هایی را که حاوی متنی است که در مرحله 3 مشخص کرده اید انتخاب می کند. در آن مرحله می توانید در صورت تمایل، قالب بندی را روی سلول ها اعمال کنید.
البته میتوانید از قالببندی شرطی برای قالببندی پویا سلولهایی که حاوی متنی هستند که میخواهید برجسته کنید، استفاده کنید. تنها کاری که باید انجام دهید این است که شرطی را تنظیم کنید که از "Text Contains" به عنوان آزمایش استفاده کند. البته این کار تمام سلولهایی را که حاوی متن هستند انتخاب نمیکند، اما آنها را برجسته میکند تا بتوانید مکان آنها را انتخاب کنید.
همچنین می توانید از یک ماکرو برای انتخاب تمام سلول هایی که حاوی متن مورد نظر هستند استفاده کنید. موارد زیر یک روش نسبتاً ساده است که کار را انجام می دهد:
Sub selCellbasedonValue()
Dim c As Object
Dim u As Range
Dim v As Range
Dim sInpt As String
Set u = ActiveSheet.UsedRange
sInpt = InputBox("Enter the search text")
If sInpt > "" Then
For Each c In u
If Instr(LCase(sInpt),LCase(c.Value)) > 0 Then
If v Is Nothing Then
Set v = Range(c.Address)
Else
Set v = Union(v, Range(c.Address))
End If
End If
Next
v.Select
Set v = Nothing
End If
Set u = Nothing
End Sub
در انتخاب سلولهایی که باید آنها را بشناسید مشکلی وجود دارد - اگر سلولها به هم پیوسته نباشند، نمیتوانید سلولها را برش دهید یا کپی کنید. اگر سعی کنید، یک پیغام خطایی دریافت می کنید که نشان می دهد این دستور در چندین انتخاب قابل استفاده نیست. ساده ترین راه برای کپی کردن محتویات سلول در مکان دیگری استفاده از ماکرو است:
Sub CopyFinds()
Dim sSrch As String
Dim sFirst As String
Dim rPaste As Range
Dim i As Integer
Dim iLeftC As Integer
Dim lTopR As Long
Dim c As Object
If Selection.Cells.Count = 1 Then
MsgBox "Select the range to be searched."
Exit Sub
End If
Specify search string
sSrch = InputBox(Prompt:="Enter the search text")
Set the paste address
On Error Resume Next
Set rPaste = Application.InputBox(Prompt:="Enter the upper-left " & _
"cell address for the paste range", Type:=8)
On Error GoTo 0
Exit if canceled
If TypeName(rPaste) <> "Range" Then Exit Sub
Upper left cell to be used
Set rPaste = rPaste.Range("A1")
Set where paste will start and headings
Application.ScreenUpdating = False
lTopR = rPaste.Row
iLeftC = rPaste.Column
Cells(lTopR, iLeftC) = "Address"
Cells(lTopR, iLeftC + 1) = "Cell Value"
lTopR = lTopR + 1
Start copying cell values
With Selection
Set c = .Find(What:=sSrch, LookAt:=xlPart, MatchCase:=True)
If Not c Is Nothing Then
sFirst = c.Address
Do
Cells(lTopR, iLeftC) = c.Address
Cells(lTopR, iLeftC + 1) = c.Value
Set c = .FindNext(c)
lTopR = lTopR + 1
Loop While Not c Is Nothing And c.Address <> sFirst
End If
End With
Application.ScreenUpdating = True
Cells(rPaste.Row, rPaste.Column).Select
End Sub
هنگامی که محدوده ای از سلول ها را انتخاب می کنید و این ماکرو را اجرا می کنید، از شما خواسته می شود که آنچه را که در جستجوی آن هستید (مورد مهم است) و آدرسی را که می خواهید آن را کپی کنید، مشخص کنید. سپس ماکرو تمام سلولهای حاوی آن مقدار را پیدا میکند و آدرس و مقدار سلول را در آدرس شروعی که شما مشخص کردهاید کپی میکند. ماکرو خطاهای زیادی را بررسی نمی کند. اگر آدرس مورد نظر را مشخص کنید که قبلاً اطلاعاتی در آن وجود دارد، اطلاعات را بازنویسی می کند. علاوه بر این، اگر یک آدرس هدف را مشخص کنید که در محدوده ای که جستجو می کنید باشد، ماکرو ممکن است بی نهایت اجرا شود. شما قطعا باید هدفی را مشخص کنید که خارج از محدوده مورد جستجو باشد.