2012-10-10 120 views
1

我想從Excel表格中製作一些可打印的報表,如圖表和圖片等。我能夠把圖表使用下面的代碼在紙張上:Excel VBA:定位和形狀對齊

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) 

但定位和對準失敗這是使我的報告看起來很醜陋。任何更好的方式來實現這一目標

回答

3

要添加,位置,一步到位對齊您可以使用以下方法:

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

Left是左對齊和Top是頂部對齊。 WidthHeight - 好吧,你可以弄明白!

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

更多信息

+0

有用信息:Excel工作表高度= 15728640.0的Excel工作表寬度= 847872.0行計數= 1048576行高度=每每頁= 47列15行= 9列寬= 8.43 – Seenu