8、SetXAxisHeadings函式 (轉)

worldblog發表於2007-12-04
8、SetXAxisHeadings函式 (轉)[@more@] 

Sub SetXAxisHeadings(ByVal oRs As ADO.Recordset, ByVal strValueCol As String) Dim iCount As Integer Dim iRow, iCol As Integer Dim nMaxRows As Integer Dim oFill As .ChartFillFormat '--- 檢查引數是否合法 If (IsNull(oRs) Or IsNull(strValueCol) _ Or oExcelChart.Seriellection.Count < 1) Then Err.Raise Number:=1001 + vbError, _ Description:="Invalid recordset or column name" Exit Sub End If On Error GoTo hError '--- 單個資料系列中最大資料個數 nMaxRows = 25 '--- 設定初始值和位置 oRs.MoveFirst iRow = 0: iCol = 1 '--- 迴圈,將記錄集中的資料寫入工作表第一列 While (Not oRs.EOF And iRow < nMaxRows) iRow = iRow + 1 '--- 設定單元格的值 oExcelSheet.Cells(iRow, iCol) = CStr(oRs(strValueCol).Value) '--- 下一行 oRs.MoveNext Wend '--- 檢查是否確實寫入了資料 If (iRow > 0) Then '--- 將這些資料設定為X-軸標籤 oExcelChart.SeriesCollection(1).XValues = _ oExcelSheet.Range(oExcelSheet.Cells(1, iCol), _ oExcelSheet.Cells(iRow, iCol)) End If Exit Sub hError: App.LogEvent Err.Description, vbLogEventTypeError Err.Raise Err.Number, Err., Err.Description End Sub


   該方法的處理步驟與AddDataSeries()方法相似。標題也是作為記錄集的一個列傳入,其中的值被加入到工作表中保留的第一個列,然後使用Series的XValues物件和工作表物件的Range()方法將這些資料加入圖表。Range()方法返回的是一個區域,該區域被賦給了Chart物件的XValues物件。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-988514/,如需轉載,請註明出處,否則將追究法律責任。

相關文章