最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用C#和VBA將Excel中的圖表保存為圖片的操作指南

 更新時(shí)間:2025年06月16日 10:18:54   作者:Eiceblue  
在Excel報(bào)表自動(dòng)化生成和圖表內(nèi)容復(fù)用的場(chǎng)景中,將圖表導(dǎo)出為圖片是一個(gè)非常常見的需求,我們可以使用C#代碼實(shí)現(xiàn)批量圖表圖片導(dǎo)出,也可以借助VBA在Excel中一鍵導(dǎo)出圖表為圖片,本文將介紹如何使用 C# 和 VBA 將 Excel 中的圖表保存為圖片,需要的朋友可以參考下

引言

在Excel報(bào)表自動(dòng)化生成和圖表內(nèi)容復(fù)用的場(chǎng)景中,將圖表導(dǎo)出為圖片是一個(gè)非常常見的需求,例如用于嵌入PPT報(bào)告、發(fā)送郵件展示、網(wǎng)頁(yè)可視化展示等。我們可以使用C#代碼實(shí)現(xiàn)批量圖表圖片導(dǎo)出,也可以借助VBA在Excel中一鍵導(dǎo)出圖表為圖片。

本文將介紹如何使用 C# 和 VBA 將 Excel 中的圖表保存為圖片,并提供完整的代碼示例和操作指導(dǎo)。

使用 C# 將 Excel 圖表保存為圖片

在 .NET 環(huán)境下,我們可以使用 Free Spire.XLS for .NET 輕松實(shí)現(xiàn)批量讀取 Excel 文件中的圖表并導(dǎo)出為 .jpg 格式圖片。

安裝 Spire.XLS

通過 NuGet 安裝 Spire.XLS:

Install-Package FreeSpire.XLS

C# 示例代碼

using Spire.Xls;
using System.Drawing;

Workbook workbook = new Workbook();
workbook.LoadFromFile("Sample.xlsx");

// 遍歷所有工作表及其圖表,保存為圖片
foreach (Worksheet sheet in workbook.Worksheets)
{
    foreach (Chart chart in sheet.Charts)
    {
        Bitmap chartImage = chart.SaveToImage();
        chartImage.Save($"output/{sheet.Name} - {chart.ChartTitle}.jpg");
    }
}
workbook.Dispose();

操作說明

  • 載入已有的 Excel 文件;
  • 遍歷工作簿中所有工作表;
  • 遍歷每個(gè)工作表中的圖表(Chart)對(duì)象;
  • 使用 SaveToImage() 方法將圖表保存為 Bitmap 圖像;
  • 將圖像保存為 .jpg 文件。

適用場(chǎng)景:C# 批量自動(dòng)導(dǎo)出圖表圖像,用于后臺(tái)程序、報(bào)表系統(tǒng)等。

使用 VBA 將 Excel 圖表保存為圖片

如果你想直接在 Excel 中導(dǎo)出當(dāng)前工作簿的圖表為圖片,可以使用 VBA 宏快速實(shí)現(xiàn),無(wú)需額外安裝插件或庫(kù)。

VBA 代碼示例

Sub SaveAllChartsAsImages()
    Dim ws As Worksheet
    Dim chartObj As ChartObject
    Dim folderPath As String
    Dim chartIndex As Integer
    Dim fileName As String
    
    ' 設(shè)置保存路徑
    folderPath = ThisWorkbook.Path & "\Charts"
    If Dir(folderPath, vbDirectory) = "" Then MkDir folderPath
    
    chartIndex = 1 ' 圖片命名編號(hào)
    
    ' 遍歷所有工作表
    For Each ws In ThisWorkbook.Worksheets
        ' 遍歷工作表中的所有圖表對(duì)象
        For Each chartObj In ws.ChartObjects
            fileName = folderPath & "\" & ws.Name & "_Chart" & chartIndex & ".jpg"
            chartObj.Chart.Export Filename:=fileName, FilterName:="JPG"
            chartIndex = chartIndex + 1
        Next chartObj
    Next ws
    
    MsgBox "所有圖表已保存為圖片。", vbInformation
End Sub

操作步驟

  • 打開 Excel 文件;
  • 按下 Alt + F11 打開 VBA 編輯器;
  • 插入一個(gè)新模塊(菜單欄:插入 > 模塊);
  • 粘貼上述代碼;
  • 按 F5 運(yùn)行宏;
  • Excel 會(huì)在當(dāng)前文件所在目錄中創(chuàng)建 Charts 文件夾,并將所有圖表以 .jpg 格式導(dǎo)出至該目錄。

適用場(chǎng)景:無(wú)需安裝環(huán)境,適合非程序員用戶在 Excel 中快速導(dǎo)出圖表圖片。

效果展示

導(dǎo)出的圖表圖像示例(使用 C#):

總結(jié)

方法優(yōu)勢(shì)適合人群
C# + Spire.XLS支持批量處理、嵌入系統(tǒng)、自動(dòng)化程度高開發(fā)者、系統(tǒng)集成
Excel VBA 宏無(wú)需額外組件、操作直觀辦公用戶、無(wú)開發(fā)經(jīng)驗(yàn)者

無(wú)論你是希望實(shí)現(xiàn)圖表自動(dòng)化導(dǎo)出,還是手動(dòng)快速生成圖表圖像,這兩種方式都能滿足不同場(chǎng)景下的需求。

以上就是使用C#和VBA將Excel中的圖表保存為圖片的操作指南的詳細(xì)內(nèi)容,更多關(guān)于C# VBA將Excel圖表保存圖片的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C# 使用Tcp/Udp協(xié)議的示例代碼

    C# 使用Tcp/Udp協(xié)議的示例代碼

    這篇文章主要介紹了C# 使用Tcp/Udp協(xié)議的示例,文中代碼非常詳細(xì),幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-08-08
  • C#用ComboBox控件實(shí)現(xiàn)省與市的聯(lián)動(dòng)效果的方法

    C#用ComboBox控件實(shí)現(xiàn)省與市的聯(lián)動(dòng)效果的方法

    這篇文章主要介紹了C#用ComboBox控件實(shí)現(xiàn)省與市的聯(lián)動(dòng)效果的方法,較為詳細(xì)的分析了ComboBox控件的使用原理與相關(guān)技巧,需要的朋友可以參考下
    2015-01-01
  • C#利用NPOI操作Excel(單元格設(shè)置)

    C#利用NPOI操作Excel(單元格設(shè)置)

    這篇文章主要為大家詳細(xì)介紹了C#利用NPOI操作Excel實(shí)現(xiàn)單元格設(shè)置,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • VB.NET中TextBox的智能感知應(yīng)用實(shí)例

    VB.NET中TextBox的智能感知應(yīng)用實(shí)例

    這篇文章主要介紹了VB.NET中TextBox的智能感知應(yīng)用實(shí)例,非常實(shí)用的功能,需要的朋友可以參考下
    2014-08-08
  • C#獲取DICOM圖像像素的像素值的代碼詳解

    C#獲取DICOM圖像像素的像素值的代碼詳解

    DICOM即醫(yī)學(xué)數(shù)字成像和通信,是醫(yī)學(xué)圖像和相關(guān)信息的國(guó)際標(biāo)準(zhǔn)(ISO 12052),它定義了質(zhì)量能滿足臨床需要的可用于數(shù)據(jù)交換的醫(yī)學(xué)圖像格式,這篇文章主要介紹了C#獲取DICOM圖像像素的像素值的方法,需要的朋友可以參考下
    2024-07-07
  • c#實(shí)現(xiàn)flv解析詳解示例

    c#實(shí)現(xiàn)flv解析詳解示例

    本文提供的解析程序簡(jiǎn)單的把FLV分解了出來,如果要做FLV的修改操作的話,可以給每個(gè)類加個(gè)toStream方法,再歷遍依次調(diào)用就可以寫回到文件里了
    2014-01-01
  • C#訪問應(yīng)用程序配置文件的方法

    C#訪問應(yīng)用程序配置文件的方法

    C#訪問應(yīng)用程序配置文件的方法,需要的朋友可以參考一下
    2013-03-03
  • c#多線程編程基礎(chǔ)

    c#多線程編程基礎(chǔ)

    線程是程序中一個(gè)單一的順序控制流程.在單個(gè)程序中同時(shí)運(yùn)行多個(gè)線程完成不同的工作,稱為多線程,本文使用示例介紹一下多線程的使用方法
    2014-02-02
  • c# WPF中通過雙擊編輯DataGrid中Cell的示例(附源碼)

    c# WPF中通過雙擊編輯DataGrid中Cell的示例(附源碼)

    這篇文章主要介紹了c# WPF中通過雙擊編輯DataGrid中Cell的示例(附源碼),幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下
    2021-03-03
  • C#中Random.Next方法的使用小結(jié)

    C#中Random.Next方法的使用小結(jié)

    在C#中,Random.Next()方法用于生成一個(gè)隨機(jī)整數(shù),本文主要介紹了C#中Random.Next方法的使用小結(jié),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01

最新評(píng)論

平泉县| 和林格尔县| 韩城市| 库伦旗| 澜沧| 呼图壁县| 梓潼县| 遂溪县| 四平市| 固安县| 郧西县| 延安市| 龙南县| 双柏县| 阳曲县| 和田县| 虎林市| 德阳市| 娱乐| 黑龙江省| 海南省| 塔城市| 霍林郭勒市| 准格尔旗| 渭南市| 临武县| 大竹县| 南华县| 祁门县| 莱芜市| 团风县| 德清县| 行唐县| 盐池县| 保靖县| 承德县| 黄龙县| 阜城县| 瑞金市| 南投市| 阳朔县|