将Excel组织架构数据转化为可视化图表

如果你的组织架构数据存储在Excel中,可以使用以下VBA代码自动生成组织架构图:vbaSub GenerateOrganizationChart() Dim pptApp As Object Dim pptPres As Object Dim pptSlide As Object Dim oshp As Object Dim orgChart As Object Dim wb As Workbook Dim ws As Worksheet Dim rng As Range Dim i As Integer Dim rootNode As Object Dim parentNode As Object ' 创建 PowerPoint 应用程序对象 Set pptApp = CreateObject('PowerPoint.Application') pptApp.Visible = True ' 可见性设置为 True ' 创建一个新的演示文稿 Set pptPres = pptApp.Presentations.Add ' 创建一个新的幻灯片 Set pptSlide = pptPres.Slides.Add(1, 12) ' 12 表示幻灯片类型为组织架构图 ' 打开 Excel 文件 Set wb = Workbooks.Open('路径\文件名.xlsx') ' 将 '路径\文件名.xlsx' 修改为你的 Excel 文件路径和名称 Set ws = wb.Sheets('Sheet1') ' 将 'Sheet1' 修改为包含组织架构数据的工作表名称 Set rng = ws.Range('A1:B10') ' 将 'A1:B10' 修改为包含组织架构数据的范围 ' 在幻灯片上创建组织架构图 Set oshp = pptSlide.Shapes.AddSmartArt(pptApp.SmartArtLayouts(84), Left:=100, Top:=100, Width:=500, Height:=300) Set orgChart = oshp.SmartArt ' 设置组织架构图的内容 Set rootNode = orgChart.AllNodes.Add rootNode.TextFrame2.TextRange.Text = rng.Cells(1, 1).Value For i = 2 To rng.Rows.Count Set parentNode = rootNode Set rootNode = parentNode.Nodes.Add rootNode.TextFrame2.TextRange.Text = rng.Cells(i, 1).Value rootNode.Parent = parentNode Next i ' 保存演示文稿 pptPres.SaveAs '路径\文件名.pptx' ' 关闭 PowerPoint 应用程序对象 pptApp.Quit ' 关闭并保存 Excel 文件 wb.Close SaveChanges:=True ' 释放对象变量 Set pptSlide = Nothing Set pptPres = Nothing Set pptApp = Nothing Set rng = Nothing Set ws = Nothing Set wb = NothingEnd Sub

使用说明:

  1. 将以上代码复制到Excel的VBA编辑器中 (打开方式: Alt + F11)。2. 修改代码中的以下部分: - '路径\文件名.xlsx' :替换为你的Excel文件路径和名称。 - 'Sheet1':替换为包含组织架构数据的工作表名称。 - 'A1:B10':替换为包含组织架构数据的单元格范围。3. 运行代码 (点击运行按钮或按F5)。

代码运行后,将会自动生成一个PowerPoint文件,其中包含根据Excel数据生成的组织架构图。

用VBA代码将Excel组织架构数据生成可视化图表

原文地址: https://www.cveoy.top/t/topic/lzG 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录