![]() |
Tipp 0240
|
Eingebettetes MS-Graph-Objekt bearbeiten
|
 |
|
Autor/Einsender: Datum: |
|
Angie 27.05.2002 |
|
Entwicklungsumgebung: |
|
Word 2000 |
|
|
In diesem Beispiel wird das im aktiven Dokument eingebettete MS-Graph-Objekt (OLEObject) bearbeitet.
|
Soll ein InlineShape-Objekt nachträglich per VBA bearbeitet werden, kann dieses normalerweise nur über den Index
angesprochen werden, da man dem InlineShape-Objekt keinen Namen vergeben kann. Um eine eindeutige Identifizierung zu
gewährleisten, wurde hier dem bestehenden InlineShape-Objekt ein Textmarkenname zugewiesen.
|
|
|
Public Sub MSGraphObjectBearbeiten()
Const cBMName As String = "tmGraph1"
Dim objWDDoc As Word.Document
Dim objIShape As Word.InlineShape
Dim objOLEChart As Object
Dim objOLEDataSht As Object
Dim nRow As Long
Dim nCol As Integer
Set objWDDoc = ActiveDocument
If objWDDoc.Bookmarks.Exists(cBMName) Then
On Error Resume Next
Set objIShape = _
objWDDoc.Bookmarks(cBMName).Range.InlineShapes(1)
If Err.Number <> 0 Then
MsgBox "Es ist ein Fehler aufgetreten !!" & vbCrLf & _
Err.Description, vbOKOnly + vbExclamation, _
Title:="Demo - MS-Graph-Objekt bearbeiten"
Set objWDDoc = Nothing
Exit Sub
Else
If objIShape.OLEFormat.ClassType <> "MSGraph.Chart.8" Then
MsgBox "Es ist ein Fehler aufgetreten !!" & vbCrLf & _
"Das Element ist kein MS-Graph-Objekt !!", _
vbOKOnly + vbExclamation, _
Title:="Demo - MS-Graph-Objekt bearbeiten"
Set objIShape = Nothing
Set objWDDoc = Nothing
Exit Sub
End If
End If
On Error GoTo 0
End If
objIShape.OLEFormat.DoVerb wdOLEVerbHide
Set objOLEChart = objIShape.OLEFormat.Object
With objOLEChart
.HasTitle = True
.ChartTitle.Text = "Demo - MS-Graph-Objekt bearbeiten"
.ChartTitle.Font.Size = 12
End With
Set objOLEDataSht = objOLEChart.Application.DataSheet
With objOLEDataSht
For nRow = 2 To 4
For nCol = 2 To 5
.Cells(nRow, nCol).Value = Int((100 * Rnd) + 1)
Next nCol
Next nRow
End With
With objOLEChart.Application
.Update
.Quit
End With
Set objOLEDataSht = Nothing
Set objOLEChart = Nothing
Set objIShape = Nothing
Set objWDDoc = Nothing
End Sub
|
|
|
|
Um dieses Beispiel ausführen zu können, muss kein Verweis auf die Microsoft Graph Objektbibliothek
Microsoft Graph x.0 Object Library in das VBA-Projekt eingebunden werden.
|
Um jedoch während der Entwicklungsphase die Vorteile von Early Binding nutzen zu können, können Sie einen Verweis auf die
Objektbibliothek einbinden, und vor der Verteilung des Programms den Verweis entfernen.
Im Tipp Automation mit Office-Anwendungen wird der Unterschied zwischen Early und Late Binding
anhand eines Beispiels zur Automatisierung von Word beschrieben.
|
|
|
|
Windows-Version |
95 |
 |
|
98/SE |
 |
|
ME |
 |
|
NT |
 |
|
2000 |
 |
|
XP |
 |
|
Vista |
 |
|
Win
7 |
 |
|
|
Word-Version |
95 |
 |
|
97 |
 |
|
2000 |
 |
|
2002
(XP) |
 |
|
2003 |
 |
|
2007 |
 |
|
2010 |
 |
|
|
|
Download (20,5 kB)
|
Downloads bisher: [ 1031 ]
|
|
|