ich habe ziemliche Probleme beim Erstellen eines Diagramms. Ich habe schon hier im Archiv und in anderen Foren ähnliche Fragen gefunden, aber noch keine richtigen Antworten.
Ich möchte per VBA ein Diagramm erstellen. Hierzu nutze ich folgendes Makro (das Add-In " _ Analyse-Tool Pack" muss hierzu installiert sein und die Funktion "Hex2Dec" muss evtl. in "HexInDez" abgeändert werden, je nach installierter Sprachvariante):
Option Explicit
Sub Makro1()
Dim src_data As Range
'--- Formeln in letzte Spalte einfügen: ---
With Range([B2], [B2].End(xlDown)).Offset(0, 15)
.FormulaR1C1 = "=HEX2DEC(RC[-2]&TEXT(RC[-3],""00""))-IF(RC[-2]>=128,65536,0)"
End With
'--- Diagrammdaten festlegen: ---
Set src_data = Sheets("Diagramm").Range("C1:C10,Q1:Q10")
'---Diagramm hinzufügen: ---
Charts.Add
ActiveChart.ChartType = xlXYScatterLines
ActiveChart.SetSourceData Source:=src_data, PlotBy:=xlColumns
ActiveChart.Location Where:=xlLocationAsObject, Name:="Diagramm"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "Wert"
.Axes(xlCategory, xlPrimary).HasTitle = False
.Axes(xlValue, xlPrimary).HasTitle = False
End With
End Sub
Beim Starten des Makros erhalte ich aber jedesmal den Fehler
"Laufzeitfehler 1004: Anwendungs- oder objektdefinierter Fehler"
in der Zeile
Set src_data = Sheets("Diagramm").Range("C1:C10,Q1:Q10")
Geht man dann das Makro im Debug-Mode weiter (Einzelschritt), ist plötzlich alles ok.
Ich habe das schon so weit heruntergebrochen, dass das Problem offenbar in dieser Zeile liegt: _
p>
.FormulaR1C1 = "=HEX2DEC(RC[-2]&TEXT(RC[-3],""00""))-IF(RC[-2]>=128,65536,0)"
Schreibt man hier eine andere Funktion hinein dann geht es. Ich brauche aber nunmal diese Funktion. Auch mit "Copy" und "PasteSpecial xlValues" geht es nicht.
Hat jemand eine Idee, was ich noch tun kann?
Hier die Datei: https://www.herber.de/bbs/user/48160.xls
Vielen Dank schon mal im voraus,
Thomas