plazieren von Diagrammen
07.10.2003 00:11:33
Werner
ich erzeuge mit folgendem Macro auf einem Datenblatt ein Diagramm.
Diese Diagramm möchte ich am Ende der Tabelle positionieren.
mit folgendem Befehl finde ich das Ende der Tabelle:
Range("B:B").Select
Selection.Find(what:="", After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, Searchorder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False).Select
Meine Frage lautet: Wie kann ich das Diagramm dort positionieren?
Public
Sub Start_createChartobjectResize()
' Start_createChartobjectRange Makro
' Makro am 05.09.2003 von ICFJOW aufgezeichnet
Dim xlRange As Range
Dim lngnumrows As Long
Dim lngNumCols As Long
ActiveSheet.ChartObjects("rudi").Activate
ActiveChart.ChartObjects
ActiveChart.ChartArea.Select
Selection.Clear
Set xlWS = ThisWorkbook.Worksheets("Tabelle1")
lngnumrows = xlWS.Range("A65536").End(xlUp).Row
lngNumCols = xlWS.Range("IV1").End(xlToLeft).Column
Set xlRange = xlWS.Range(xlWS.Cells(1, 1), xlWS.Cells(lngnumrows, lngNumCols))
CreateChartObjectResize lngnumrows, lngNumCols
Set xlWS = Nothing
End Sub
Public
Sub CreateChartObjectResize(ByVal lngnumrows As Long, lngNumCols As Long)
Dim ochart As Object
Application.ScreenUpdating = False
Set ochart = Application.Charts.Add
With ochart
.ChartType = xlColumnClustered
.SetSourceData Source:=xlWS.Range("A1").Resize(lngnumrows, lngNumCols), _
PlotBy:=xlColumns
With ActiveChart.Axes(xlCategory)
.MinimumScale = Date - 20
.MaximumScale = Date
End With
.HasTitle = False
.HasLegend = False
.Location where:=xlLocationAsObject, Name:=xlWS.Name
End With
Set ochart = xlWS.ChartObjects(xlWS.ChartObjects.Count)
With ochart
.Width = 600
.Height = 400
End With
Application.ScreenUpdating = True
ochart.Name = "rudi"
ActiveSheet.Shapes("rudi").IncrementLeft -40.5
ActiveSheet.Shapes("rudi").IncrementTop 206.25
Range("B:B").Select
Selection.Find(what:="", After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, Searchorder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False).Select
End Sub