У меня есть приложение Access 2010, в котором я использую объект диаграммы как:
Код, который я использую для заполнения этого графика, имеет вид:
'getRunningAppObject Function
Dim appObj As String
Dim excelObj As Object
appObj = "Excel.Application"
On Error Resume Next
Set excelObj = GetObject(, appObj)
If Not excelObj Is Nothing Then
Set getRunningAppObject = excelObj
Else
Set getRunningAppObject = New Excel.Application
End If
'-------
Set shpGraph = GraphUtil.Object
Set odataSheet = shpGraph.Application.DataSheet
odataSheet.Cells.Clear
Set objxl = getRunningAppObject
Set objWKB = objxl.Workbooks.Add
objWKB.Worksheets().Add.Name = "temp"
Set objsheet = objWKB.Worksheets("temp")
objsheet.Cells(1, 1) = "Week"
objsheet.Cells(2, 1) = "Used"
objsheet.Cells(3, 1) = "Not Used"
objsheet.Cells(4, 1) = "Shortage"
While Not rs.EOF
objsheet.Cells(1, i) = CStr(rs.Fields!week)
objsheet.Cells(2, i) = IIf(IsNull(rs.Fields("used").value), 0, rs.Fields("used").value)
objsheet.Cells(3, i) = IIf(IsNull(rs.Fields("not used").value), 0, rs.Fields("not used").value)
objsheet.Cells(4, i) = IIf(IsNull(rs.Fields("shortage").value), 0, rs.Fields("shortage").value)
i = i + 1
rs.MoveNext
Wend
objsheet.Cells.Select
objsheet.Cells.Copy
odataSheet.Cells(1, 1).Paste
objWKB.Application.CutCopyMode = False
objWKB.Close False
Я пытаюсь обновить этот объект графика в более новой версии, поэтому в Access 2013 или 2019, когда я попытался вставить диаграмму из меню дизайна, он добавил диаграмму следующим образом:
Но когда я пытаюсь заполнить этот график одним и тем же кодом, я получаю ошибку: Ошибка времени выполнения '438': объект не поддерживает этосвойство или метод в строке Установить shpGraph = GraphUtil.Object
Что я делаю не так?Как я могу заполнить объект Chart набором записей?