मैं Microsoft Excel में PNG या GIF फ़ाइल में ग्राफ़ को कैसे सहेज सकता हूं?


27

मैं Microsoft Excel में PNG या GIF फ़ाइल में ग्राफ़ को कैसे सहेज सकता हूं?

मुझे पता है कि मैं एक HTML फ़ाइल के रूप में सहेज सकता हूं और वहां बनाई गई छवि का उपयोग कर सकता हूं, लेकिन मुझे संदेह है कि एक ऐसा तरीका है जो फ़ाइलों की अन्य अव्यवस्था नहीं बनाता है जो मुझे नहीं चाहिए। मैं एक ऐड-इन स्थापित करने के लिए खुश हूँ अगर यह अनुशंसित विकल्प है।

मैं Excel 2003 और 2007 का उपयोग कर रहा हूँ अगर वह मायने रखता है।


यहाँ एक स्पष्टीकरण और एक एक्सेल ऐड-इन (नि: शुल्क) के लिए एक लिंक दिया गया है जो आपके लिए यह करेगा: उन्नत निर्यात चार्ट प्रक्रिया
जॉन पेल्टियर

जवाबों:


34

एक्सेल में इस कार्यक्षमता के लिए किसी भी उपयोगकर्ता-सुलभ समर्थन का अभाव है, लेकिन आप या तो आसानी से इसके आसपास काम कर सकते हैं या VBA को खोद सकते हैं, जहां यह सुविधा प्रदान की जाती है:


"वन-शॉट" निर्यात

  • ग्राफ़ का चयन करें (संपूर्ण ग्राफ़, आंतरिक घटक नहीं; इसलिए सीमा का चयन करें)।
  • इसे कॉपी करें (ctrl-c, राइट-क्लिक कॉपी, जो भी आपको पसंद है)।
  • एमएस पेंट खोलें।
  • पेस्ट करें (आप पहले छवि का आकार कम करना चाह सकते हैं, यह फिट होने के लिए बढ़ जाएगा, लेकिन सिकुड़ा नहीं)।
  • इच्छानुसार सेव करें।

थोक निर्यात

आप शायद ActiveChart.ExportVBA मैक्रो का उपयोग करना चाहते हैं , यह आपको एक फ़ाइल पथ निर्दिष्ट करने देता है और फिर एक्सेल को काम करने देता है।

नीचे एक कार्यशील प्रोटोटाइप है जिसे मैंने अभी एक साथ रखा है। इसे चलाएं और सक्रिय कार्यपुस्तिका में प्रत्येक चार्ट को उसी फ़ाइल के रूप में उसी पीएनजी प्रारूप _chart##में फ़ाइल नाम (जहां ##एक बढ़ती संख्या है) में निर्यात किया जाएगा ।

यह किसी भी सुरक्षा जाँच नहीं करता है (इसलिए फ़ाइलों को अधिलेखित कर देगा!) और इसमें कोई त्रुटि जाँच नहीं होती है। यह काम नहीं करेगा यदि आपने अभी तक कार्यपुस्तिका को सहेजा नहीं है, तो स्थान केवल पढ़ने के लिए या कुछ और है जो फ़ाइल के स्थान पर लिखने से रोकता है। मैंने केवल एक्सेल 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

@ चिह्न, मैं ऊब गया था और कुछ मिनट थे इसलिए मैंने एक साथ कुछ और पूरा किया है। संपादन की जाँच करें, मुझे लगता है कि मैं आपको एक बहुत ही शुरुआती बिंदु दे दूँगा।
DMA57361

चीयर्स! मैं इसे एक चक्कर दूँगा।
दोपहर

4

एक्सेल फाइल को HTML के रूप में सहेजने का सबसे अच्छा तरीका है।

फिर उस फ़ोल्डर पर जाएं जहां चित्र संग्रहीत किए गए थे और आपको पीएनजी चित्र दिखाई देंगे।


मुझे पूरी तरह से सहमत होना होगा कि यह वास्तव में सबसे तेज़ तरीका है। से दूर।
जीफ

3

पीएनजी में सुरक्षित रूप से परिवर्तित करने के लिए आप एक्सेल से आकृति को कॉपी कर सकते हैं, इसे पावर प्वाइंट में स्लाइड पर पेस्ट कर सकते हैं, और फिर निम्न कार्य कर सकते हैं।

इस प्रकार सहेजेंअन्य प्रारूप , फिर अपने इच्छित प्रारूप का चयन करें। यह तब पूछेगा कि क्या आप इसे केवल वर्तमान स्लाइड या सभी स्लाइड पर लागू करना चाहते हैं। यदि आप सभी स्लाइड्स का चयन करते हैं, तो यह आपके द्वारा निर्दिष्ट निर्देशिका में एक फ़ोल्डर बनाता है, और प्रत्येक स्लाइड को चयनित प्रारूप में अपनी फ़ाइल में सहेजता है।

यह बहुत सुरुचिपूर्ण नहीं है, लेकिन यह पर्याप्त त्वरित हो सकता है जब आपको केवल फ़ाइलों की आवश्यकता होती है, और विशेष रूप से सहायक होता है यदि आपने पहले ही समान ग्राफ़ के साथ प्रस्तुति दी है।


2

पुराना धागा, लेकिन अगर Google से किसी और के यहाँ भूमि हो तो: मैक के लिए एक्सेल 2011 में ठीक ऐसा करने के लिए राइट-क्लिक मेनू पर "सेव एज़ पिक्चर" विकल्प है।


एक्सेल का क्या संस्करण? मेरा एक्सेल 2007 निश्चित रूप से यह नहीं है। 7 साल पुराने कार्यालय के साथ चिपके रहना शायद एक "लागत बचत उपाय" है।
ओगरे भजन 33

मैक के लिए एक्सेल 2011 जो मैं उपयोग कर रहा हूं।
डेव मुलिगन

0

Excel 2010 में, आप यह कर सकते हैं:

  1. इसे चुनने के लिए चार्ट पर क्लिक करें।
  2. CTRL + C का उपयोग करके कॉपी करें, या राइट-क्लिक करके और कॉपी का चयन करें।
  3. एक ग्राफिक्स एडिटिंग प्रोग्राम पर स्विच करें (मैंने Paint.net का उपयोग किया है )।
  4. पेस्ट करें।

फिर आप इमेज को जिस भी फॉर्मेट में चाहें सेव कर सकते हैं।


0

यदि आप Greenshot (एक स्क्रीन कैप्चर सॉफ़्टवेयर) का उपयोग कर रहे हैं , तो आप ग्राफ़ को Excel ( Ctrl+ C) में कॉपी कर सकते हैं , फिर Greenshot के आइकन पर राइट-क्लिक करें, क्लिपबोर्ड से ओपन इमेज चुनें और इसे सेव करें। ग्राफिक्स एडिटर का उपयोग करने की आवश्यकता नहीं है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.