Excel 스프레드시트에서 데이터 한 줄 추출

Excel 스프레드시트에서 데이터 한 줄 추출

Excel 스프레드시트에서 한 줄의 데이터를 추출하여 다른 시트로 전송해야 합니다. 일련의 대시(- - - - -)를 검색한 다음 대시 아래 2줄에 있는 데이터 줄을 추출해야 합니다.

답변1

엑셀 찾기 구문 찾기

희미한 rFound As Range

여기서 "표현식"은 유효한 범위 개체(예: Range("A1:A100"), Columns(2) 등)입니다. 또한 Find 메서드를 사용할 때마다 Range 개체가 반환됩니다.

표현식.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat)

다음 오류 재개 시 범위로 rFound를 희미하게 표시

    With ActiveWorkbook.ActiveSheet

        Set rFound = .Columns(1).Find(What:="- - - - -", After:=.Cells(1, 1), LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)

    On Error GoTo 0
        If Not rFound Is Nothing Then
             Match = rFound.Address
             MsgBox (rFound.Offset(2, 0))


        End If

    End With

답변2

이를 위해 파워 쿼리 추가 기능을 사용하겠습니다. Excel 테이블에서 데이터를 읽을 수 있습니다.

2개의 쿼리를 작성하겠습니다. 첫 번째는 인덱스 열(행 번호)을 추가한 다음 대시가 있는 행을 필터링합니다. 그런 다음 간단한 계산 열([Index] + 2)을 추가합니다. 이 쿼리에서는 테이블을 출력할 필요가 없습니다.

두 번째 쿼리는 기본 테이블에서 시작한 다음 해당 "[Index] + 2" 열과 내부 조인 유형(일치 항목만 유지)을 사용하여 첫 번째 쿼리와 병합됩니다. 이 쿼리는 새 테이블을 Excel로 출력합니다.

파워 쿼리 UI에서 클릭하기만 하면 거의 모든 것을 구축할 수 있습니다. 필요한 공식은 매우 간단합니다 [Index] + 2.

관련 정보