2017-03-14 45 views
2

我试图用基于单元格值的图像填充堆叠excel图。我可以为第一列做,但不能在第二列。Excel VBA:用基于单元格值的图像填充堆叠图(和树图图)

下面是一个例子。我想,以填补基于B列

Image: stacked diagram

值与图像橙色区域而这里的VBA代码如何填第一列具有图像:

Sub fill_with_image() 
    With Sheets("Sheet1").ChartObjects(1).Chart.SeriesCollection(1) 
     Set vAddress = ActiveSheet.Range(Split(Split(.Formula, ",")(1), "!")(1)) 
     For i = 1 To vAddress.Cells.Count 
      imagefile = Cells(i + 1, 1).Value 
      .Points(i).Format.Fill.UserPicture (imagefile & ".png") 
     Next i 
    End With 
End Sub 

的我的问题的第二部分:我找不到任何文档如何使用图像填充树图。任何想法,如果可能的话?

Image Treemap-Diagram

回答

1

只是循环选择SeriesCollection(2)

Sub fill_with_image() 
Dim j as integer  
For j = 1 to 2 
    With Sheets("Sheet1").ChartObjects(1).Chart.SeriesCollection(j) 
    Set vAddress = ActiveSheet.Range(Split(Split(.Formula, ",")(1), "!")(1)) 
    For i = 1 To vAddress.Cells.Count 
     imagefile = Cells(i + 1, 1).Value 
     .Points(i).Format.Fill.UserPicture (imagefile & ".png") 
    Next i 
    End With 
Next j 
End Sub 
+1

谢谢..伟大工程! – Clain29

+0

我刚刚读到“2016年的所有新图表都不包括VBA支持”,所以我想这回答我的问题的第二部分! – Clain29