Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1016to1020
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
Inhaltsverzeichnis

Variable wird nur im Einzelschrittmodus gesetzt

Variable wird nur im Einzelschrittmodus gesetzt
23.10.2008 15:13:39
Robin
Hallo Cracks,
mir ist jetzt zweimal aufgefallen, dass zum Teil Befehle im normalen Modus nicht richtig ausgeführt werden, im Einzelschrittmodus - oder wenn man Haltepunkte setzt, aber schon. Zum Beispiel hatte ich das Problem, dass eine String-Variable immer mit einem Leerstring belegt war und einen Fehler auslöste, wenn ich aber auf den Befehl, wo sie gefüllt wird, einen Haltepunkt setzte, funktionierte alles. Hat da jemand eine Erklärung für? Sollte ich vielleicht eine Wartezeit vor dem entsprechenden Befehl einbauen?
Vielen Dank für eure Tipps,
Robin

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Variable wird nur im Einzelschrittmodus gesetzt
23.10.2008 15:26:16
Uwe
Hi Robin,
bist Du denn nachdem Du gesehnen hast, dass die Variable gefüllt war, bei bestehendem Haltepunkt mit F5 weitergegangen? Vielleicht wird sie ja nach dem Befüllen wider geleert?.
Ist nur so 'ne Idee. Lasse die Frage offen.
Gruß
Uwe
(:o)
AW: Variable wird nur im Einzelschrittmodus gesetzt
23.10.2008 16:17:00
Robin
Hallo Uwe,
danke für die Antwort, klar bin ich dann weitergegangen, habe auch dort, wo sie abgefragt wird, Haltpunkt gesetzt und dann stimmt alles. Danach klappte es auch im Normalmodus.
AW: Variable wird nur im Einzelschrittmodus gesetzt
23.10.2008 17:41:39
Horst
Hi,
wo und wie sind die Variablen deklariert?
mfg Horst
AW: Variable wird nur im Einzelschrittmodus gesetzt
23.10.2008 17:50:00
Robin
Öhm, deklariert? Außerhalb des Subs hab ich die Variablen als String deklariert. Kann das Programm leider nicht hochladen, das ist riesig und dann gibts Haue wegen Firmengeheimnisse und so.
Die Variablen heißen
DiagrammnameKräfte
und
DiagrammnameBeschleunigungen
Der Teilcode sieht so aus:
objnew.Charts.Add
With objnew.ActiveChart
.ChartType = xlXYScatterLinesNoMarkers
.Name = "Diagramme Beschleunigungen"
.HasTitle = True
.ChartTitle.Characters.Text = "Diagramme Beschleunigungen"
.ChartTitle.Characters.Font.Bold = True
.ChartTitle.Characters.Font.Size = 12
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "gefahrene Strecke [m]"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Beschleunigung [m/s²]"
.HasLegend = True
.Legend.Position = xlTop
' .PlotArea.Interior.ColorIndex = xlNone
.SeriesCollection(1).Delete
DiagrammnameBeschleunigungen = .CodeName
End With
objnew.Charts.Add
With objnew.ActiveChart
.ChartType = xlXYScatterLinesNoMarkers
.SetSourceData Source:=Sheets("Datenmatrix").Range("B2")
.Name = "Diagramme Kräfte"
.HasTitle = True
.ChartTitle.Characters.Text = "Diagramme Kräfte"
.ChartTitle.Characters.Font.Bold = True
.ChartTitle.Characters.Font.Size = 12
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "gefahrene Strecke [m]"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Kraft [N]"
.HasLegend = True
.Legend.Position = xlTop
' .PlotArea.Interior.ColorIndex = xlNone
.SeriesCollection(1).Delete
DiagrammnameKräfte = .CodeName
End With
' unnötige Tabellenblätter löschen
Application.DisplayAlerts = False
objnew.Sheets("Datenmatrix").Delete
objnew.Sheets("Tabelle1").Delete
objnew.Sheets("Tabelle2").Delete
objnew.Sheets("Tabelle3").Delete
Application.DisplayAlerts = True
' notwendigen VBA-Code in neue Arbeitsmappe kopieren
Dim objCodeModule As Object
' On Error GoTo errhandler
Set m = objnew.VBProject.vbcomponents.Add(1)
m.Name = "Diagrammfunktionen"
Set objCodeModule = objdgl.VBProject.vbcomponents("Diagrammfunktionen").CodeModule
With objnew.VBProject.vbcomponents("Diagrammfunktionen").CodeModule
.DeleteLines 1, .CountOfLines
.InsertLines 1, objCodeModule.Lines(1, objCodeModule.CountOfLines)
End With
Set objCodeModule = objdgl.VBProject.vbcomponents("Diagramm1").CodeModule
With objnew.VBProject.vbcomponents(DiagrammnameBeschleunigungen).CodeModule
.DeleteLines 1, .CountOfLines
.InsertLines 1, objCodeModule.Lines(1, objCodeModule.CountOfLines)
End With
Set objCodeModule = objdgl.VBProject.vbcomponents("Diagramm2").CodeModule
With objnew.VBProject.vbcomponents(DiagrammnameKräfte).CodeModule
.DeleteLines 1, .CountOfLines
.InsertLines 1, objCodeModule.Lines(1, objCodeModule.CountOfLines)
End With
Gruß
Robin
Anzeige
AW: Variable wird nur im Einzelschrittmodus gesetzt
23.10.2008 18:36:12
Horst
Hi,
"...Außerhalb des Subs hab ich die Variablen als String deklariert.."
Schön, aber wie genau sieht die Deklaration aus?
Public DeineVariable As String
oder
Private deineVariable As String
oder
Dim DeineVariable As String
mfg Horst
AW: Variable wird nur im Einzelschrittmodus gesetzt
24.10.2008 09:03:00
Robin
Achso, entschuldigung, hab sie mit
Dim Variabe As String
deklariert.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige