Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
880to884
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
880to884
880to884
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Diagrammposition im Tabellenblatt

Diagrammposition im Tabellenblatt
25.06.2007 20:31:00
reiner
Hallo Leute,
ein Diagramm wird per Makro auf einem Tabellenblatt erstellt. Dabei erscheint das fertige Diagramm immer im gerade sichtbaren Tabellenbereich. Ist es auch möglich das Diagramm immer in einem definierten Tabellenbereich außerhalb des gerade sichtbaren Tabellenbereichs z. B. ab Zeile 1000 zu erstellen?
mfg
reiner

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Diagrammposition im Tabellenblatt
25.06.2007 20:41:00
Beverly
Hi Reiner,
ja, das ist möglich. Das hängt aber davon ab, wie dein Code für das Erstellen des Diagramms aussieht - erstellst du es direkt als Diagrammobjekt, kannst du die Position gleich bei der Erstellung vorgeben. Gehst du den Weg über die Erstellung alsDiagrammblatt mit Speicherort in der Tabelle, musst du das Diagramm als Shape ansprechen und kannst dann eine .Top- und eine .Left-Position angeben.
________________________________________

AW: Diagrammposition im Tabellenblatt
25.06.2007 21:09:00
reiner
Hallo Karin,
hier ist der Code; die Diagramm- Formatierungen habe ich nicht eingfügt es geht erst einmal um das Prinzip.


Option Explicit
Dim Min%, Max%, Mittelwert%, Anzahl%, vAnfang%, vEnde%, Bereich As Range
Sub Flächendiagramm()
Mittelwert = Range("B1").Value
Min = Range("B2").Value
Max = Range("B3").Value
Anzahl = Range("B4").Value
vAnfang = Range("A1").Row
vEnde = Range("A288").Row
   Charts.Add
   ActiveChart.ChartType = xlArea
   ActiveChart.Name = ("Diagramm1")
ActiveChart.SetSourceData Source:=Sheets("Tabelle2"). _
         Range("A" & vAnfang & ":" & "A" & vEnde), PlotBy:=xlColumns
   ActiveChart.Location Where:=xlLocationAsObject, Name:="Tabelle2"
   ActiveChart.HasLegend = False
   With ActiveChart.Axes(xlValue)
      .MinimumScale = Min - 1
      .MaximumScale = Max + 1
      .MinorUnitIsAuto = True
      .MajorUnitIsAuto = True
      .Crosses = xlCustom
      .CrossesAt = Mittelwert
      .ReversePlotOrder = False
      .ScaleType = xlLinear
      .DisplayUnit = xlNone
   End With
End Sub

Wie müsste denn der Code erweitert werden damit das Diagramm im Tabellenblatt z. B. ab Zeile 1000 eingefügt wird?
mfg
reiner

Anzeige
AW: Diagrammposition im Tabellenblatt
25.06.2007 22:00:00
K.Rola
Hallo,
das Prinzip:
Option Explicit

Sub _Diagramm()
Dim objCh As Chart, strSh As String
strSh = ActiveSheet.Name
Application.ScreenUpdating = False
Set objCh = Charts.Add
Set objCh = objCh.Location(2, strSh)
With objCh
.ChartType = 4
.Parent.Interior.ColorIndex = 5
.Parent.Left = 0
.Parent.Top = Sheets(strSh).[a1000].Top
.Parent.Width = 400
.Parent.Height = 300
.Deselect
End With
Application.ScreenUpdating = True
End Sub


Gruß K.Rola

AW: Diagrammposition im Tabellenblatt
25.06.2007 22:46:42
reiner
Hallo K.Rola,
funktioniert, danke dafür
noch eine weitere Frage allerdings nicht zum Thema dieser Diskussion: mit welcher Software hast du deinen Beispielcode eingefügt?
mfg
reiner

Anzeige
AW: Diagrammposition im Tabellenblatt
25.06.2007 22:50:52
K.Rola
Hallo,
gar keine Software, wenn der Code mit Sub oder Private Sub o.ä. beginnt, wird der
Code automatisch so dargestellt. Leider klappt das nicht mit Option Explicit, wie du
an meinenm posting sehen kannst.
Gruß K.Rola

AW: Diagrammposition im Tabellenblatt
25.06.2007 23:26:00
reiner
hallo,
....umso besser, diese Form der Darstellung werde ich in Zukunft auch nutzen
mfg
reiner

AW: Diagrammposition im Tabellenblatt
25.06.2007 23:54:00
Daniel
Hi
wenn man das Option Explicit auch noch wie den den restlichen Code darstellen will, dann kann man auch einfach den ganzen Code mit Opiton Explicit markieren und auf ZITAT klicken.
Das Ergebnis sieht man aber erst in der Vorschau.
Gruß, Daniel

Anzeige
AW: Diagrammposition im Tabellenblatt
26.06.2007 07:43:19
Beverly
Hi Reiner,
hier noch eine Variante, wo das Diagrammobjekt direkt in der Tabelle erstellt wird.

Sub Flächendiagramm()
Dim chDiagramm As ChartObject
Dim wsTabelle As Worksheet
Set wsTabelle = Worksheets("Tabelle2")
Set chDiagramm = wsTabelle.ChartObjects.Add(100, 12500, 400, 300)
With chDiagramm.Chart
.ChartType = xlArea
.SetSourceData Source:=wsTabelle.Range("A1:A288"), PlotBy:=xlColumns
With .Axes(xlValue)
.MinimumScale = wsTabelle.Range("B2") - 1
.MaximumScale = wsTabelle.Range("B3") + 1
.CrossesAt = wsTabelle.Range("B1")
End With
End With
End Sub


Die Variablen für Min/Max/Achsenschnitt kannst du direkt aus der Tabelle ohne Variablen übernehmen. Einige der Achseneigenschaften sind Standard und können weggelassen werden
Bis später,
Karin

Anzeige
AW: Diagrammposition im Tabellenblatt
26.06.2007 11:46:48
reiner
danke karin,
mfg
reiner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige