Microsoft Excel에서 그래프를 PNG 또는 GIF 파일로 저장하려면 어떻게해야합니까?


27

Microsoft Excel에서 그래프를 PNG 또는 GIF 파일로 저장하려면 어떻게해야합니까?

HTML 파일로 저장하고 거기에서 생성 된 이미지를 사용할 수 있다는 것을 알고 있지만 원하지 않는 다른 파일을 생성하지 않는 방법이 있다고 생각합니다. 권장 옵션 인 경우 추가 기능을 설치하게되어 기쁩니다.

중요한 경우 Excel 2003 및 2007을 사용하고 있습니다.


다음은이를위한 Excel 추가 기능 (무료)에 대한 설명과 링크입니다. 고급 내보내기 차트 절차
Jon Peltier

답변:


34

엑셀이 기능에 대한 사용자 액세스 지원이 부족하지만, 당신도 쉽게 주위에 일하거나이 기능은 VBA,에 팔 수 있다 제공 :


"원샷"내보내기

  • 그래프를 선택하십시오 (내부 구성 요소가 아닌 전체 그래프이므로 테두리를 선택하십시오).
  • 복사하십시오 (Ctrl-c, 원하는대로 마우스 오른쪽 단추 클릭).
  • MS Paint를 엽니 다.
  • 붙여 넣기 (먼저 이미지 크기를 최소화 할 수 있습니다. 이미지 크기에 맞게 확대되지만 축소되지는 않습니다).
  • 원하는대로 저장하십시오.

대량 수출

ActiveChart.ExportVBA 매크로 에서 사용하고 싶을 수도 있습니다. 이렇게하면 파일 경로를 지정한 다음 Excel에서 작업을 수행 할 수 있습니다.

아래는 방금 정리 한 실제 프로토 타입입니다. 이 차트를 실행 하면 활성 통합 문서의 모든 차트가 해당 파일과 동일한 폴더로 PNG 형식으로 _chart##파일 이름에 추가되어 내보내집니다 ( ##숫자가 증가합니다).

그것은 하지 않습니다 어떤 안전 검사를 (그래서 파일을 덮어 쓰게됩니다!) 수행 되지 않는 오류 검사가 포함되어 있습니다. 그것은 하지 않습니다 방지 파일의 위치에 쓰는 것을 아직 통합 문서를 저장하지 않은 경우, 위치가 읽기 전용 또는 다른 어떤 작동합니다. Excel 2003에서만 이것을 테스트했습니다 (지금 당장해야 할 전부입니다).

다시 말해서 : 귀하의 책임하에 사용하십시오 . 이것은 기본 작업 예일뿐입니다 .

'small nicety to ensure two-digits for better file sorting'
Function NiceFileNumber(num As Integer) As String
    If num < 10 Then
        NiceFileNumber = "0" & num
    Else
        NiceFileNumber = num
    End If
End Function

'the real function'
Sub ExportAllCharts()
    Dim i As Integer, exportCount As Integer
    Dim fileNum As String, fileBase As String
    Dim sheetObj As Worksheet
    Dim chartObj As Chart

    'current file location and name, with extension stripped'
    fileBase = Left(ThisWorkbook.FullName, InStrRev(ThisWorkbook.FullName, ".") - 1)
    exportCount = 0

    'First, export all charts that are in their own sheets'
    For Each chartObj In ActiveWorkbook.Charts
        fileNum = NiceFileNumber(exportCount)
        exportCount = exportCount + 1

        'Do the export'
        chartObj.Export fileBase & "_chart" & fileNum & ".png"
    Next

    'Then, export all charts that are embedded inside normal sheets'
    For Each sheetObj In ActiveWorkbook.Worksheets
        For i = 1 To sheetObj.ChartObjects.count
            fileNum = NiceFileNumber(exportCount)
            exportCount = exportCount + 1

            'Do the export'
            sheetObj.ChartObjects(i).Activate
            ActiveChart.Export fileBase & "_chart" & fileNum & ".png"
        Next i
    Next
End Sub

참고 : 나는 주석 '을 양쪽 끝에 썼다. 필요하지는 않지만 여기에 올바르게 색을 칠하는 데 도움이된다.


버튼을 누르면 현재 스프레드 시트와 동일한 폴더로 파일을 내보내는 방법을 선호합니다
fmark

@fmark-그런 다음 매크로가 들어 오는 곳입니다 ActiveChart.Export ActiveWorkbook.Path & "\chart.png". 툴바 버튼에 바인딩 된 매크로에서 (그러나 조금 더 똑똑합니다!) 작업을 수행합니다.
DMA57361

@ fmark, 나는 지루했고 몇 분이 걸렸으므로 훨씬 더 완전한 것을 함께 던졌습니다. 편집 내용을 확인하면 정말 확실한 시작점이 될 것입니다.
DMA57361

건배! 나는 소용돌이를 줄 것이다.
fmark

4

가장 좋은 방법은 Excel 파일을 HTML로 저장하는 것입니다.

그런 다음 이미지가 저장된 폴더로 이동하면 원하는 PNG 이미지가 표시됩니다.


이것이 가장 빠른 방법이라는 것에 완전히 동의해야합니다. 지금까지
Jeef

3

PNG로 안전하게 변환하려면 Excel에서 그림을 복사하여 Power Point의 슬라이드에 붙여 넣은 후 다음을 수행하십시오.

다른 이름으로 저장기타 형식 을 선택한 다음 원하는 형식을 선택하십시오. 그런 다음 현재 슬라이드에만 적용할지 아니면 모든 슬라이드에 적용할지 묻습니다. 모든 슬라이드를 선택하면 지정한 디렉토리에 폴더가 만들어지고 각 슬라이드가 선택한 형식으로 자체 파일에 저장됩니다.

매우 우아하지는 않지만 파일이 필요할 때 충분히 빠를 수 있으며 이미 동일한 그래프로 프리젠 테이션을 한 경우 특히 유용합니다.


2

오래된 스레드이지만 다른 사람이 Google에서 여기로 온 경우를 대비하여 : Mac 용 Excel 2011의 오른쪽 클릭 메뉴에는 "그림으로 저장"옵션이 있습니다.


어떤 버전의 Excel? 내 Excel 2007에는 분명히 이것이 없습니다. 7 살짜리 사무실을 고수하는 것은 아마도 "비용 절감 수단"일 것입니다.
오우거 시편 33

Mac 용 Excel 2011이 내가 사용하고있는 것입니다.
Dave Mulligan

0

Excel 2010에서 다음을 수행하면됩니다.

  1. 차트를 클릭하여 선택하십시오.
  2. Ctrl + C를 사용하거나 마우스 오른쪽 단추를 클릭하고 복사를 선택하여 복사하십시오.
  3. 그래픽 편집 프로그램으로 전환하십시오 ( Paint.net 사용 ).
  4. 풀.

그런 다음 원하는 형식으로 이미지를 저장할 수 있습니다.


0

Greenshot (스크린 캡처 소프트웨어)을 사용하는 경우 Excel ( Ctrl+ C)로 그래프를 복사 한 다음 Greenshot 아이콘을 마우스 오른쪽 단추로 클릭 하고 클립 보드에서 이미지 열기를 선택 하여 저장하십시오. 그래픽 편집기를 사용할 필요가 없습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.