Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender Navigationstipps
Inhaltsverzeichnis

Excel 2003 - 2007

Excel 2003 - 2007
23.06.2008 20:06:41
Rosenwasser
Hallo,
Nach Installation von Office 2007 funktioniert mein Programm nicht mehr.
Der Code bleibt immer hangen bei: ActiveChart.Location Where:=xlLocationAsObject, Name:="Data"
Was kann hier gemacht werden?
Code:
Application.StatusBar = "Make Chart Left..."
Range("AC10").Select 'Range("Z4").Select
Charts.Add
ActiveChart.ChartType = xlColumnClustered 'xlAreaStacked
ActiveChart.SetSourceData Source:=Sheets("Data").Range("Z3:Z" & Rijaantal_Links), PlotBy:= _
xlColumns
ActiveChart.SeriesCollection(1).XValues = Sheets("Data").Range("Y3:Y" & Rijaantal_Lengte)
ActiveChart.SeriesCollection(1).Name = "=Data!R1C26"
ActiveChart.Location Where:=xlLocationAsObject, Name:="Data"
With ActiveChart.Axes(xlCategory)
.HasMajorGridlines = False
.HasMinorGridlines = False
End With
With ActiveChart.Axes(xlValue)
.HasMajorGridlines = True
.HasMinorGridlines = False
End With
ActiveChart.HasLegend = False
ActiveChart.Axes(xlValue).Select
With ActiveChart.Axes(xlValue)
.MinimumScale = 0
.MaximumScaleIsAuto = True
.MinorUnitIsAuto = True
.MajorUnit = 0.5
.CrossesAt = 0
'.Crosses = xlAutomatic
.ReversePlotOrder = False
.ScaleType = xlLinear
End With
Selection.TickLabels.AutoScaleFont = False
With Selection.TickLabels.Font
.Name = "Arial"
.FontStyle = "Standaard"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
.Background = xlAutomatic
End With
ActiveChart.Axes(xlCategory).Select
With ActiveChart.Axes(xlCategory)
.CrossesAt = 1
.TickLabelSpacing = Sheets("Data").Range("Y" & Rijaantal_Lengte)
.TickMarkSpacing = Sheets("Data").Range("Y" & Rijaantal_Lengte)
.AxisBetweenCategories = True
.ReversePlotOrder = False
End With
Selection.TickLabels.AutoScaleFont = False
With Selection.TickLabels.Font
.Name = "Arial"
.FontStyle = "Standaard"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
.Background = xlAutomatic
End With
ActiveChart.PlotArea.Select
Selection.Height = 313
Selection.Top = 34
With Selection.Border
.Weight = xlHairline
.LineStyle = xlNone
End With
Selection.Fill.TwoColorGradient Style:=msoGradientHorizontal, Variant:=1
With Selection
.Fill.Visible = True
.Fill.ForeColor.SchemeColor = 34 '2 '34
.Fill.BackColor.SchemeColor = 37 '2 '24
End With
ActiveChart.Axes(xlCategory).Select
ActiveChart.PlotArea.Select
ActiveChart.ChartArea.Select
With Selection.Border
.Weight = 2
.LineStyle = -1
End With
Selection.Fill.TwoColorGradient Style:=msoGradientHorizontal, Variant:=1
With Selection
.Fill.Visible = True
.Fill.ForeColor.SchemeColor = 2 '34
.Fill.BackColor.SchemeColor = 2 '24
End With
ActiveChart.ChartTitle.Select
Selection.AutoScaleFont = False
With Selection.Font
.Name = "Arial"
.FontStyle = "Standaard"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
.Background = xlAutomatic
End With
ActiveChart.ChartArea.Select
With Selection.Border
.Weight = 1
.LineStyle = 0
End With
Selection.Shadow = False
If Sheets("Data").Range("AG1") > 0 Then
Call GroenRood
Else: Call BalkenKleur
End If

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

Betreff
Datum
Anwender
Anzeige
AW: Excel 2003 - 2007
23.06.2008 20:23:00
Beverly
Hi,
versuche es mal nach diesem generellen Prinzip

Sub diagramm()
Dim chDiagramm As ChartObject
Set chDiagramm = Worksheets("Data").ChartObjects.Add(100, 100, 500, 350)  ' Position und Hö _
he/Breite anpassen
With chDiagramm.Chart
.SetSourceData Source:=Worksheets("Data").Range("Z3:Z" & Rijaantal_Links"), PlotBy:= _
xlColumns
End With
End Sub




AW: Excel 2003 - 2007
23.06.2008 20:54:00
Rosenwasser
Hallo Beverly,
Danke für dein schnelles antwort.
Trotzdem komme ich nicht weiter,
Wäre es möglich noch ein paar Zeilen hinzufugen, sodass ich besser sehe was Sie genau meinen?
Vielen Dank

Anzeige
AW: Excel 2003 - 2007
23.06.2008 21:18:00
Beverly
Hi,
könntest du die Arbeitsmappe hochladen, dann ist es wesentlich einfacher.


AW: Excel 2003 - 2007
23.06.2008 21:30:19
Rosenwasser
Hallo,
Geht leiter nicht.
Die Datei ist 409 kb
Wäre es möglich via mail?
Gruess,

AW: Excel 2003 - 2007
23.06.2008 21:39:14
Beverly
Hi,
du könntest ja alle nicht notwendigen inhalte löschen. Eine andere Möglichkeit wäre dieser Link, wo man bis 100 MB hochladen kann (auch Dateityp XLSM)
http://www.file-upload.net/
Die Datei bleibt 1 Jahr dort, kann bei Bedarf aber auch vorher wieder gelöscht werden.


Anzeige
AW: Excel 2003 - 2007
23.06.2008 23:11:33
Beverly
Hi,
die Anrede in den Foren ist allgemein das "Du".
Ich kann deine Datei leider nicht ausführen, da einige Werte fehlen, die ich nicht nachvollziehen kann, weil der Code bereits sehr weit fortgeschritten ist.
Ich habe mal versucht, den Code für das eine Diagramm anzupassen. Dieser Prinzipcode sollte funktionieren:

Sub Nieuwe_graf()
Call DeleteGrafieken
Application.ScreenUpdating = False
'    Sheets("Data").Select
Call Laatste_Rij
' >>>
Application.StatusBar = "Make Chart Left..."
'    Range("AC10").Select   'Range("Z4").Select
' neuer Code
Dim chDiagramm As ChartObject
Set chDiagramm = Worksheets("Data").ChartObjects.Add(100, 100, 500, 350)
With chDiagramm.Chart
.ChartType = xlColumnClustered
.SetSourceData Source:=Worksheets("Data").Range("Z3:Z" & Rijaantal_Links), PlotBy:= _
xlColumns
.SeriesCollection(1).XValues = Sheets("Data").Range("Y3:Y" & Rijaantal_Lengte)
.SeriesCollection(1).Name = "=Data!R1C26"
.HasTitle = True
With .Axes(xlValue)
.MajorUnit = 0.5
.CrossesAt = 0
.TickLabels.AutoScaleFont = False
With .TickLabels.Font
.Name = "Arial"
.FontStyle = "Standaard"
.Size = 10
End With
End With
With .Axes(xlCategory)
.CrossesAt = 1
.TickLabelSpacing = Sheets("Data").Range("Y" & Rijaantal_Lengte)
.TickMarkSpacing = Sheets("Data").Range("Y" & Rijaantal_Lengte)
.AxisBetweenCategories = True
.ReversePlotOrder = False
.TickLabels.AutoScaleFont = False
With .TickLabels.Font
.Name = "Arial"
.FontStyle = "Standaard"
.Size = 10
End With
End With
With .PlotArea
.Height = 313
.Top = 34
.Border.Weight = xlHairline
.Border.LineStyle = xlNone
.Fill.TwoColorGradient Style:=msoGradientHorizontal, Variant:=1
.Fill.Visible = True
.Fill.ForeColor.SchemeColor = 34 '2 '34
.Fill.BackColor.SchemeColor = 37 '2 '24
End With
.ChartTitle.AutoScaleFont = False
With .ChartTitle.Font
.Name = "Arial"
.FontStyle = "Standaard"
.Size = 10
End With
With .ChartArea.Border
.Weight = 1
.LineStyle = 0
End With
End With
' Ende neuer Code
If Sheets("Data").Range("AG1") > 0 Then
Call GroenRood
Else: Call BalkenKleur
End If
Application.StatusBar = False


Der Code für das 2. Diagramm müsste nach dem selben Prinzip aufgebaut werden.



Anzeige
AW: Excel 2003 - 2007
24.06.2008 22:22:00
Rosenwasser
Hallo,
Nochmals Dank für die schnelle Antworten.
Ich habe ihre Code mal eigefügt, aber bleibt noch hängen bei:
.SeriesCollection(1).Name = "=Data!R1C26"
Wass kan jetzt noch gemacht werden?

AW: Excel 2003 - 2007
24.06.2008 23:41:00
Beverly
Hi,
schreibe stattdessen

.SeriesCollection(1).Name = Sheets("Data").Range("Z1")




220 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige