Jack은 특정 단어 나 구를 검색하고 한 번에 해당 단어가 포함 된 모든 셀을 강조 표시하여 잘라내거나 복사하여 다른 곳에 붙여 넣을 수있는 방법을 궁금해합니다.

사용하려는 텍스트가 포함 된 셀을 선택하는 것은 다소 쉽습니다. 표준 찾기 및 바꾸기 기능을 사용하여 수행 할 수 있습니다. 다음 단계를 따르십시오.

  1. Ctrl + F를 누릅니다. Excel은 찾기 및 바꾸기 대화 상자의 찾기 탭을 표시합니다.

  2. 옵션 버튼을 클릭하여 대화 상자를 확장합니다. (그림 1 참조)

  3. 찾을 내용 상자에 찾으려는 텍스트를 입력합니다.

  4. 대화 상자의 컨트롤을 사용하여 원하는대로 일치를 제한합니다.

  5. 모두 찾기를 클릭합니다. 찾은 모든 일치 항목을 표시하도록 대화 상자가 확장됩니다.

  6. Ctrl + A를 누릅니다. 이렇게하면 발견 된 모든 셀이 선택됩니다.

  7. 닫기를 클릭하여 대화 상자를 닫습니다.

그게 다야. 4 단계에서 전체 셀 내용 일치를 클릭하지 않는 한 Excel은 3 단계에서 지정한 텍스트가 포함 된 모든 셀을 선택합니다. 이때 원하는 경우 셀에 서식을 적용 할 수 있습니다.

물론 조건부 서식을 사용하여 강조 표시 할 텍스트가 포함 된 셀의 서식을 동적으로 지정할 수 있습니다. “텍스트 포함”을 테스트로 사용하는 조건을 설정하기 만하면됩니다. 물론 텍스트가 포함 된 모든 셀을 선택하지는 않지만 해당 셀이있는 위치를 선택할 수 있도록 강조 표시합니다.

매크로를 사용하여 원하는 텍스트가 포함 된 모든 셀을 선택할 수도 있습니다. 다음은 작업을 수행하는 다소 간단한 것입니다.

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

셀 범위를 선택하고이 매크로를 실행하면 검색 대상 (대소 문자가 중요 함)과 복사 할 주소를 지정하라는 메시지가 표시됩니다. 그런 다음 매크로는 해당 값을 포함하는 모든 셀을 찾고 해당 주소와 셀 값을 지정한 시작 주소로 복사합니다. 매크로는 많은 오류 검사를 수행하지 않습니다. 이미 정보가있는 대상 주소를 지정하면 정보를 덮어 씁니다. 또한 검색중인 범위 내에있는 대상 주소를 지정하면 매크로가 무한히 실행될 수 있습니다. 검색중인 범위를 벗어난 대상을 지정해야합니다.

_ 참고 : _

이 페이지 (또는 ExcelTips 사이트의 다른 페이지)에 설명 된 매크로를 사용하는 방법을 알고 싶다면 유용한 정보가 포함 된 특별 페이지를 준비했습니다.

link : / excelribbon-ExcelTipsMacros [새 브라우저 탭에서 특별 페이지를 열려면 여기를 클릭하세요].

_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.

이 팁 (8964)은 Office 365의 Microsoft Excel 2007, 2010, 2013, 2016, 2019 및 Excel에 적용됩니다. 여기에서 Excel의 이전 메뉴 인터페이스에 대한이 팁 버전을 찾을 수 있습니다.

link : / excel-Searching_for_All [Searching for All].