Gordon은 특정 필드의 값에 따라 텍스트 파일의 하위 집합을 Excel로 가져 오는 방법을 궁금해합니다. 예를 들어 텍스트 파일에있는 각 레코드의 열 5에 “y”가 포함 된 레코드 만 가져 오려고 할 수 있습니다.

이 작업에 접근 할 수있는 몇 가지 방법이 있습니다. 하나는 단순히 전체 텍스트 파일을 가져오고 레코드를 정렬하고 원하지 않는 항목을 삭제할 수 있다는 것입니다. 이것은 아마도 단일 파일을 처리해야하고 전체 파일이 단일 워크 시트에 들어갈 수있는 경우 가장 간단한 옵션 일 것입니다.

또 다른 방법은 매크로를 사용하는 것입니다. (특히 동일한 유형의 파일을 꽤 많이 가져와야하는 경우 가장 빠르고 쉬운 방법입니다.) 매크로는 텍스트 파일을 열고 각 행을 읽은 다음 해당 줄의 정보를 워크 시트에 추가해야합니다. 다음은 “MyCSVFile.txt”라는 파일을 연 다음 첫 번째 행에서 시작하는 새 워크 시트에 데이터를 고정하는 예입니다.

Sub ReadMyFile()

Dim R As Integer     Dim C As Integer     Dim sDelim As String     Dim sRaw As String     Dim ReadArray() As String

sDelim = ","     ' Set to vbTab if tab-delimited file

Worksheets.Add     Open "myCSVFile.txt" For Input As #1     R = 1     Do While Not EOF(1)

Line Input #1, sRaw         ReadArray() = Split(sRaw, sDelim, 20, vbTextCompare)

If ReadArray(4) = "y" Then             For C = 0 To UBound(ReadArray)

Cells(R, C + 1).Value = ReadArray(C)

Next C             R = R + 1         End If     Loop     Close #1 End Sub

매크로를 사용하려면 처리하려는 파일과 일치하도록 파일 이름을 변경하면됩니다. 또한 sDelim 변수를 수정하여 레코드에서 구분자로 사용되는 것과 일치하는지 확인해야합니다. 작성된대로 구분 기호가 쉼표 (CSV 파일에 있음)라고 가정하지만 실제로 탭 구분 파일로 작업하는 경우에는 vbTab으로 변경할 수 있습니다. 매크로가 완료된 후에는 단일 소문자 “y”문자가있는 레코드 만 새 워크 시트에 있습니다.

또 다른 방법은 Excel의 파워 쿼리 기능을 사용하는 것입니다. 이것은 Excel 2010 및 Excel 2013의 일부 변형에서 사용할 수있는 Microsoft의 무료 추가 기능입니다. 다음 위치에서 다운로드 (지원되는 변형 확인) 할 수 있습니다.

http://www.microsoft.com/en-us/download/details.aspx?id=39379

Excel 2016을 사용하는 경우 파워 쿼리가 프로그램에 기본 제공됩니다.

파워 쿼리가 설치되어 있거나 Excel 버전에서 사용할 수 있고 해당 Excel 버전이 Excel 2010 또는 Excel 2013 인 경우 다음 단계를 따르세요.

  1. 리본 메뉴의 파워 쿼리 탭을 표시합니다.

  2. 파일에서 클릭 | CSV에서. Excel은 표준 열기 대화 상자와 매우 유사한 쉼표로 구분 된 값 찾아보기 대화 상자를 표시합니다.

  3. Excel로 가져올 CSV 파일을 찾아 선택합니다.

  4. 열기를 클릭하십시오. Excel은 각 필드에 사용할 수있는 필터링 단추와 함께 파워 쿼리 창에 데이터를로드합니다.

Excel 2016 이상 버전을 사용하는 경우 단계가 약간 다릅니다.

  1. 리본의 데이터 탭을 표시합니다.

  2. 가져 오기 및 변환 그룹에서 새 쿼리 도구 (Excel 2016) 또는 데이터 가져 오기 도구 (이후 Excel 버전)를 클릭합니다. Excel은 몇 가지 옵션을 표시합니다.

  3. 파일에서 클릭 | 텍스트 / CSV에서. Excel은 표준 열기 대화 상자와 매우 유사한 데이터 가져 오기 대화 상자를 표시합니다.

  4. Excel로 가져올 CSV 파일을 찾아 선택합니다.

  5. 열기를 클릭하십시오. Excel은 각 필드에 사용할 수있는 필터링 단추와 함께 파워 쿼리 창에 데이터를로드합니다.

이 시점에서 사용중인 Excel 버전에 관계없이 컨트롤을 사용하여 쿼리를 지정할 수 있습니다 (즉, 가져올 레코드에 대한 정의 설정). 닫기 및로드를 클릭하면 파일에서 레코드가 검색되고 나중에 사용하기 위해 쿼리를 저장할 수 있습니다.

네 번째 방법은 Microsoft Query를 사용하는 것입니다. 이렇게하려면 매우 긴 일련의 단계를 따라야합니다. (누구도 Microsoft가 Microsoft Query를 사용하기 쉽게 만들고 싶다고 말한 적이 없으며 이러한 단계를 수행하면 동의하게됩니다.)

  1. 리본의 데이터 탭을 표시합니다.

  2. 데이터 가져 오기 및 변환 그룹에서 데이터 가져 오기 도구를 클릭 한 다음 외부 데이터 가져 오기 그룹 이전 버전의 Excel에서 다른 소스에서를 선택한 다음 Microsoft 쿼리에서를 선택합니다. Excel은 데이터 소스 선택 대화 상자를 표시합니다. (그림 1 참조)

  3. 새 데이터 소스 옵션을 선택하고 확인을 클릭하십시오. Excel에 새 데이터 원본 만들기 대화 상자가 표시됩니다. (그림 2 참조)

  4. “CSV 파일”과 같은 데이터 소스의 이름을 제공하십시오.

  5. 항목 2의 드롭 다운 목록을 사용하여 Microsoft Text Driver를 선택합니다.

  6. 연결을 클릭하십시오. Excel은 ODBC 텍스트 설정 대화 상자를 표시합니다.

  7. 즉시 확인을 클릭하여 대화 상자를 닫습니다.

  8. 확인을 클릭하여 새 데이터 원본 만들기 대화 상자를 닫습니다. Excel은 4 단계에서 지정한 이름을 포함하도록 데이터 원본 선택 대화 상자를 업데이트합니다.

  9. 방금 만든 데이터 소스를 선택한 다음 확인을 클릭합니다. Excel은 원본에 데이터 테이블이 없다는 경고를 표시합니다. (괜찮습니다; 당신은 아무것도 정의하지 않았습니다.)

  10. 확인을 클릭하여 경고를 닫습니다. Excel은 쿼리 마법사 대화 상자를 표시합니다.

  11. 빈 쿼리 마법사 대화 상자에서는 아무 작업도 수행 할 수 없으므로 취소를 클릭합니다. Excel은 Microsoft Query에 남아있을 것인지 묻는 경고를 표시합니다.

  12. 예를 클릭하십시오. Excel은 테이블 추가 대화 상자를 표시합니다.

  13. 대화 상자의 컨트롤을 사용하여 CSV 파일을 찾아 선택합니다.

  14. 추가 버튼을 클릭합니다. Excel은 아무 작업도하지 않는 것처럼 보이지만 실제로는 CSV 파일에 대한 참조를 추가했습니다.

  15. 닫기 버튼을 클릭하여 테이블 추가 대화 상자를 닫습니다. CSV 파일이 Microsoft Query 창에 표시됩니다.

  16. CSV 파일의 필드 목록을 사용하여 워크 시트로 가져올 각 필드를 Microsoft Query 창의 맨 아래 영역으로 끕니다. (모든 필드를 원하면 별표를 창의 하단 영역으로 드래그하면됩니다.)

  17. 클릭 기준 | 기준 추가. Excel은 기준 추가 대화 상자를 표시합니다. (그림 3 참조)

  18. 대화 상자의 컨트롤을 사용하여 필드 5 (이름에 관계없이)가 “y”와 같도록 지정합니다.

  19. 추가 버튼을 클릭하여 실제로 쿼리에 기준을 추가합니다.

  20. 닫기를 클릭하여 기준 추가 대화 상자를 닫습니다.

  21. 파일 | 데이터를 Microsoft Excel로 반환합니다. Excel은 데이터 가져 오기 대화 상자를 표시합니다. (그림 4 참조)

  22. 원하는대로 대화 상자에서 설정을 변경하여 CSV 데이터를 Excel로 반환하는 방법을 나타냅니다.

  23. 확인을 클릭하십시오.

(단계가 길다고 말했습니다.) 이제 Excel에서 데이터로 작업 할 수 있으며 원하는 경우 리본의 디자인 탭에있는 도구를 사용하여 CSV 파일의 데이터를 새로 고칠 수 있습니다.

_ 참고 : _

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

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

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

이 팁 (10384)은 Office 365의 Microsoft Excel 2007, 2010, 2013, 2016, 2019 및 Excel에 적용됩니다.