Excel圖示程式設計例項

2023-02-06 06:51:02 字數 3845 閱讀 9285

excel圖表程式設計應用大全(2):圖表程式設計基礎

嵌入式圖表和圖表工作表

圖表在工作表中有兩種存在方式:

嵌入式圖表與工作表的資料在一起,或者與其他的嵌入式圖表在一起。

圖表工作表是特定的工作表,只包含單獨的圖表。

(1)嵌入式圖表

當希望圖表作為工作表的一部分,與資料或其他圖表在一起時,嵌入式圖表是最好的選擇。chart物件代表每乙個嵌入式圖表,包含在chartobject物件裡。

每個excel工作表都有乙個chartobjects集合,包含工作表中每個嵌入式圖表。為了在工作表中新增新的嵌入式圖表,在集合中新增chartobject物件,其語法為:

其中,引數left和引數top指定圖表左上角的位置,引數width和引數height指定圖表尺寸。所有4個引數都以磅為單位。該方法返回對新建立的chartobject物件的引用,使用chart屬性引用所包含的圖表。

例如:dim co as chartobject

dim ch as chart

set co = worksheets("sheet1"). 50, 250, 165)

set ch =

執行上述**後,在工作表sheet1中放置乙個新的空嵌入式圖表,使用變數ch來引用該圖表。

(2)圖表工作表

當希望圖表顯示最大尺寸,而且不會妨礙資料或其他圖表時,使用圖表工作表。chart物件代表圖表工作表。與嵌入式圖表不同,不需要chartobject物件,因為圖表工作表的位置是固定的,其尺寸取決於工作表的尺寸。

每個工作簿都有乙個charts集合,包含該工作簿中的所有圖表工作表。

注意,工作簿的charts集合不會引用嵌入式圖表,僅僅是圖表工作表。相反,工作表的chartobjects集合僅僅引用嵌入式圖表。要新增新的圖表工作表,使用add方法:

該方法返回對新圖表的引用。下面的**在活動工作簿中新增新的圖表工作表,並且包含對新圖表的引用:

dim ch as chart

set ch =

執行上述**後,使用變數ch操控圖表。

chart物件

以下圖所示的工作表為例,簡要介紹chart物件及其應用。

要指定圖表資料,需要呼叫chart物件的setsourcedata方法。語法為:

setsourcedata(source,plotby)

其中,引數source是包含資料的工作表區域,可以通過行列識別符號或者名稱來指定該引數值。引數plotby是乙個常量,指定資料系列是行區域(xlrows)還是列區域(xlcolumns)。

如上圖所示的工作表,設定圖表源資料的**如下:

source:=worksheets("sheet1").range("b3:f6"),plotby:=xlrows

假設ch引用chart物件。下面的過程基於上圖工作表資料建立乙個嵌入式圖表:

sub createembeddedchart()

dim co as chartobject

dim ch as chart

set co = worksheets("sheet1"). 100, 250, 165)

set ch =

source:=worksheets("sheet1").range("b3:f6"), plotby:=xlrows

end sub

說明: 圖表中自動新增了資料系列和類別標籤。

在水平軸中繪製類別;垂直軸中繪製數值。

自動建立圖表圖例,以識別資料系列。

圖表的垂直軸根據資料值自動縮放。

在沒有指定圖表型別時,預設使用簇狀柱形圖。

生成的圖表如下圖所示。

下面,來指定圖表的型別。

chart物件的charttype屬性控制圖表的型別,並且excel提供了一組預定義常量指定該屬性。每個常量不僅指定基本型別(例如條形圖、柱狀圖或折線圖),而且也指定每種型別的子型別,包括圖表是否作為二維或三維顯示。

下表列出了一些經常使用的型別。

下面的示例**演示了如何設定圖表型別,使用了上圖工作表的資料,指定帶標記的折線圖。

sub createchartsheet()

dim ch as chart

set ch =

source:=worksheets("sheet1").range("b3:f6"), plotby:=xlrows

= xllinemarkers

end sub

生成的圖表如下圖所示。

控制圖表外觀

除了圖表的型別外,還有許多選項用來控制圖表看起來的樣子,其中一些選項僅僅為表現外觀,而另一些選項則表現圖表傳遞給檢視者的資訊。

1、顯示圖表標題

在圖表上方可以顯示圖表標題。下面列出的chart物件的兩個屬性控制圖表標題:

hastitle屬性。true/false值,指定是否顯示標題。

charttitle,控制標題的詳細資訊。

要顯示圖表標題,必須設定charttitle物件的屬性並且設定hastitle為true。下面的**在圖表中顯示標題「家電銷售量」:

= true

= "家電銷售量"

其中,變數ch引用已經存在的圖表。注意,在設定charttitle物件的任何屬性之前,必須將hastitle屬性設定為true,否則,會發生錯誤。

本例中,簡單地設定圖表標題文字後,將採用預設的字型、位置等設定,可以使用下表列出的charttitle物件屬性來修改圖表標題的外觀。

2、圖表座標軸文字

大多數excel圖表都有兩個座標題,餅圖除外。水平座標軸是類別軸,垂直座標軸是數值軸。預設情況下,座標軸沒有標題,但可以新增標題。

以chart物件的axes集合的方式引用圖表的座標軸。通過使用常量xlcategory和xlvalue指定座標軸。例如,**:

圖表物件.axes(xlcategory)

引用圖表的類別座標軸。而**:

圖表物件.axes(xlvalue)

引用數值座標軸。

要對座標軸新增標題,設定hastitle屬性為true,然後使用屬性來設定標題。例如,假設變數ch引用已存在的圖表:

"銷售量"

要移除座標軸標題,只須設定hastitle屬性為false。要修改已有的座標軸標題,改變屬性的值。

注意,通過設定hastitle為false移除座標軸標題,將徹底刪除標題,而不是簡單地隱藏標題。在試圖處理axistitle物件之前,確保設定hastitle為true,否則會發生錯誤。

下面列出的程式改進了上文中的程式,不僅建立了圖表,而且也新增了圖表標題和座標軸標題:

sub createembeddedchartwithtitles()

dim co as chartobject

dim ch as chart

set co = worksheets("sheet1"). 100, 250, 165)

set ch =

source:=worksheets("sheet1").range("b3:f6"), plotby:=xlrows

'新增圖表標題

= true

= "家電銷售量"

'新增類別軸標題

= true

= "期間"

'新增數值軸標題

= true

= "銷售量"

end sub

結果如下圖所示。

處理圖表中的字型

可以編寫vba**來修改圖表中任何文字的字型。與特定項(圖表標題、座標軸標題等)相關的font物件控制文字外觀。圖表中的文字項和相關的font物件如下表所示。

上表列出的所有物件都有autoscalefont屬性,預設值為true,表明當圖表尺寸改變時字型尺寸自動改變。因此,設定字型尺寸僅僅設定了當時相對於圖表尺寸的初始字型尺寸,如果圖表本身調整的話,實際字型尺寸也變化。

下面的**修改圖表標題為14磅arial型別的粗體。

Excel應用例項

1.乙個8人的包工隊,承包了一項工程,工程造價50000元,工資情況300元 天2人 200元 天3人 150元 天3人,各人工時情況請看下面 費用花去8000元,稅金2500元,其他500元。剩餘資金按工時平均分紅。計算個人實際應得工資。新建excel 圖1 將題目 中的資料填入新建excel 中...

車床程式設計例項六

圓柱螺紋程式設計螺紋導程為1.5mm,1.5mm,1mm,每次吃刀量 直徑值 分別為0.8mm 0.6mm 0.4mm 0.16mm 圖3.3.12螺紋程式設計例項 3312 n1 g92 x50 z120 設立座標系,定義對刀點的位置 n2 m03 s300 主軸以300r min旋轉 n3 g0...

matlab的程式設計例項解析

matlab程式設計方法及若干程式例項 樊双喜 河南大學數學與資訊科學學院開封475004 摘要本文通過對 matlab 程式設計中的若干典型問題做簡要的分析和總結,並 在此基礎上著重討論了有關演算法設計 程式的除錯與測試 演算法與程式的優化以 及迴圈控制等方面的問題.還通過對一些程式例項做具體解析...