Excel에서 쉼표와 따옴표 구분 기호를 모두 사용하여 텍스트 파일을 내보내는 절차

요약

Microsoft Excel에는 텍스트 파일을 따옴표와 쉼표로 구분 기호로 내보내도록 데이터를 텍스트 파일로 자동으로 내보내는 메뉴 명령이 없습니다. 예를 들어 다음 데이터가 포함된 텍스트 파일을 자동으로 만드는 명령은 없습니다.

"Text1","Text2","Text3"

그러나 Microsoft Visual Basic for Applications 프로시저를 사용하여 Excel에서 이 기능을 만들 수 있습니다.

추가 정보

Microsoft에서 제공하는 프로그래밍 예제는 예시를 위한 것일 뿐이며 이와 관련하여 명시적이거나 묵시적인 어떠한 보증도 하지 않습니다. 이는 상품성이나 특정 목적에 대한 적합성의 묵시적인 보증을 포함하며 이에 제한되지 않습니다. 이 문서에서는 예제에 사용되고 있는 프로그래밍 언어와 프로시저를 만들고 디버깅하는 데 사용되는 도구를 사용자가 잘 알고 있는 것으로 가정합니다. Microsoft 지원 엔지니어는 사용자에게 도움이 되도록 특정 프로시저에 대한 기능을 설명할 수 있지만 사용자의 특정 요구 사항에 맞도록 예제를 수정하여 추가 기능을 제공하거나 프로시저를 구성하지는 않습니다.

다음과 유사한 Visual Basic 프로시저에서 Print # 문을 사용하여 따옴표와 쉼표가 모두 있는 텍스트 파일을 구분 기호로 내보낼 수 있습니다. 프로시저가 올바르게 작동하려면 실행하기 전에 데이터가 포함된 셀을 선택합니다.

다음 샘플 코드를 사용하려면 다음 단계를 수행합니다.

  1. 새 통합 문서를 엽니다.

  2. Microsoft Office Excel 2003 또는 Microsoft Excel 2002에서 도구 메뉴의 매크로를 가리킨 다음 Visual Basic 편집기 클릭합니다. 또는 Alt+F11을 누릅니다.

    Microsoft Office Excel 2007에서 개발자 탭을 클릭한 다음 코드 그룹에서 Visual Basic을 클릭합니다. 또는 Alt + F11을 누릅니다.

    참고

    리본 메뉴에 개발자 탭을 표시하려면 Microsoft Office 단추를 클릭하고 Excel 옵션을 클릭하고인기 있는 범주를 클릭한 다음 리본 검사 상자에서 개발자 표시 탭을 선택한 다음 확인을 클릭합니다.

  3. Visual Basic 편집기 삽입 메뉴에서 모듈을 클릭합니다.

  4. 모듈 시트에 다음 샘플 코드를 입력하거나 붙여넣습니다.

    Sub QuoteCommaExport()
       ' Dimension all variables.
       Dim DestFile As String
       Dim FileNum As Integer
       Dim ColumnCount As Long
       Dim RowCount As Long
    
       ' Prompt user for destination file name.
       DestFile = InputBox("Enter the destination filename" _
          & Chr(10) & "(with complete path):", "Quote-Comma Exporter")
    
       ' Obtain next free file handle number.
       FileNum = FreeFile()
    
      ' Turn error checking off.
       On Error Resume Next
    
       ' Attempt to open destination file for output.
       Open DestFile For Output As #FileNum
    
       ' If an error occurs report it and end.
       If Err <> 0 Then
          MsgBox "Cannot open filename " & DestFile
          End
       End If
    
       ' Turn error checking on.
       On Error GoTo 0
    
       ' Loop for each row in selection.
       For RowCount = 1 To Selection.Rows.Count
    
       ' Loop for each column in selection.
          For ColumnCount = 1 To Selection.Columns.Count
    
            ' Write current cell's text to file with quotation marks.
             Print #FileNum, """" & Selection.Cells(RowCount, _
                ColumnCount).Text & """";
    
             ' Check if cell is in last column.
             If ColumnCount = Selection.Columns.Count Then
                ' If so, then write a blank line.
                Print #FileNum,
             Else
                ' Otherwise, write a comma.
                Print #FileNum, ",";
             End If
          ' Start next iteration of ColumnCount loop.
          Next ColumnCount
       ' Start next iteration of RowCount loop.
       Next RowCount
    
       ' Close destination file.
       Close #FileNum
    End Sub
    
  5. 매크로를 실행하기 전에 내보낼 데이터를 선택한 다음 QuoteCommaExport 서브루틴을 실행합니다.