复制代码 代码如下: ''owc.vbs html' target='_blank'>class owc private o '传入物件 public property set set_obj(o_id) set o=o_id end property '画图矩形图 'chart_bgcolor_图表的背景颜色 'chartCaption_图表的标题 'chartCaption_fontColor_图表标题颜色 'Interior_Color_矩形内的填充颜色 'Caption_名称 'categories_名称数组 'values_值数组串 public sub bar(chart_bgcolor_,chartCaption_,chartCaption_fontColor_,Interior_Color_,Caption_,categories_,values_) o.Clear set cht = o.Charts.Add set c = o.Constants cht.Type = c.chChartTypeColumnClustered '设背景色或是填充 o.Charts(0).PlotArea.Interior.SetSolid chart_bgcolor_
set sc=o.Charts(0).SeriesCollection(0) sc.Caption=Caption_ Set dl = cht.SeriesCollection(0).DataLabelsCollection.Add dl.HasValue = True dl.HasPercentage = False dl.Font.Size = 9 dl.Font.Color = "red"
Set categoryAxis = cht.Axes(c.chAxisPositionBottom) categoryAxis.Font.Size = 9
Set categoryAxis = cht.Axes(c.chAxisPositionLeft) categoryAxis.Font.Size = 9 end sub '多系列拆线图 'chart_bgColor_图表的背景颜色 'chartCaption_图表的标题 'chartCaption_fontColor_图表标题颜色 'color_颜色数组 'caption_名称数组 'categories_名称数组 'values_值数组 public sub serLine(chart_bgColor_,chartCaption_,chartCaption_fontColor_,color_,SeriesNames_,categories_,values_) o.Clear Set cht = o.Charts.Add Set c = o.Constants '设置图表类型 cht.Type = c.chChartTypeLineMarkers '给绘图区加背景色 o.Charts(0).PlotArea.Interior.Color=chart_bgColor_ '加上标题 o.HasChartSpaceTitle = True o.ChartSpaceTitle.Caption = chartCaption_ o.ChartSpaceTitle.Font.Color = chartCaption_fontColor_ o.ChartSpaceTitle.Font.Name = "Arial" o.ChartSpaceTitle.Font.Size = 12 ''添加数据 cht.SetData c.chDimSeriesNames, c.chDataLiteral, SeriesNames_ cht.SetData c.chDimCategories, c.chDataLiteral, Categories_
set categoryAxis = cht.Axes(c.chAxisPositionBottom) categoryAxis.Font.Size = 9
Set categoryAxis = cht.Axes(c.chAxisPositionLeft) categoryAxis.Font.Size = 9
for i = 0 to ubound(SeriesNames_) valuetemp = "" for j = i*(ubound(Categories_)+1) to (i+1)*(ubound(Categories_)+1)-1 valuetemp = valuetemp & "," & values_(j) next valuearr = split(mid(valuetemp,2),",") cht.SeriesCollection(i).SetData c.chDimValues, c.chDataLiteral, valuearr cht.SeriesCollection(i).Line.Color = color_(i) cht.SeriesCollection(i).Line.Weight = c.owcLineWeightThin cht.SeriesCollection(i).Marker.Style = c.chMarkerStyleDiamond cht.SeriesCollection(i).Interior.Color = color_(i) Set dl = cht.SeriesCollection(i).DataLabelsCollection.Add dl.HasValue = true dl.HasPercentage = false dl.Font.Size = 9 dl.font.color="red" next end sub '清除图型 public sub clear() o.Clear end sub end class
使用测试代码: 复制代码 代码如下: html head title vbscript owc class test /title script language="vbscript" src="owc.vbs" /script script language="vbscript" sub window_onload() set t = new owc
set t=nothing end sub /script /head body div id="c1" object id="cs1" name="cs1" classid="CLSID:0002E55D-0000-0000-C000-000000000046" codebase="owc11.dll" /object /div div id="c2" object id="cs2" name="cs2" classid="CLSID:0002E55D-0000-0000-C000-000000000046" codebase="owc11.dll" /object /div div id="c3" object id="cs3" name="cs3" classid="CLSID:0002E55D-0000-0000-C000-000000000046" codebase="owc11.dll" /object /div div id="c4" object id="cs4" name="cs4" classid="CLSID:0002E55D-0000-0000-C000-000000000046" codebase="owc11.dll" /object /div div id="c5" object id="cs5" name="cs5" classid="CLSID:0002E55D-0000-0000-C000-000000000046" codebase="owc11.dll" /object /div /body /html
owc是什么? Office Web Components是一组的COM控件,设计的目的是为众多的控件容器提供交互的电子表格建模,数据报表和数据可视化功能。OWC库包含四个主要的组件:电子表格组件,图表组件,透视表组件和数据源组件。 “Office Web Components”名称中的单词”Office”表示这些控件就是由那些开发微软Excel和Access的程序员中的一部分人开发的,并且这些控件被设计成在外观,使用感受和行为表现上就像是他们的微软Office兄弟的精简版一样。这些控件确实不包含Excel和Access中的所有的功能——换句话说,你也不会为了在浏览器中查看一个报表而动态的下载完整的Excel和Access,这些控件也确实包含了许多的常用功能,尤其是那些在与已有内容进行交互时所必需的功能。此外,这些控件还能够读写Excel 2000的HTML格式的文件,允许用户点击一个按钮,将当前的数据加载到Excel中,以便作更加强大的分析。html教程