Excel VBA:形状的定位和对齐

时间:2012-10-10 10:03:02

标签: vba excel-vba excel

我正在尝试使用某些形状(例如图表和图片)从Excel工作表制作可打印报告。我可以使用以下代码将图表放在工作表上:

    oSheetReport.Range("A51").Select()

    Dim oChart1 As Excel.Shape
    oChart1 = oSheetReport.Shapes.AddChart()
    oChart1.Chart.ChartType = Excel.XlChartType.xlLine
    oChart1.Chart.SetSourceData(Source:=oSheet.UsedRange)

    oSheetReport.Range("A70").Select()

    oChart1 = oSheetReport.Shapes.AddChart()
    oChart1.Chart.ChartType = Excel.XlChartType.xlColumnStacked
    oChart1.Chart.SetSourceData(Source:=oSheet.UsedRange)

    oSheetReport.Range("A100").Select()

    oChart1 = oSheetReport.Shapes.AddChart()
    oChart1.Chart.ChartType = Excel.XlChartType.xlColumnStacked100
    oChart1.Chart.SetSourceData(Source:=oSheet.UsedRange)

但定位和对齐失败,这使我的报告看起来很丑陋。有没有更好的方法来实现这个目标?

1 个答案:

答案 0 :(得分:3)

要在一个步骤中添加,定位和对齐,您可以使用以下内容:

Set oChart1 = ActiveSheet.ChartObjects.Add _
        (Left:=250, Width:=375, Top:=75, Height:=225)

Left是左对齐,Top是顶部对齐。 WidthHeight - 好吧,你可以搞清楚!

http://peltiertech.com/Excel/ChartsHowTo/QuickChartVBA.html

的更多信息