Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

VBA Fokus akzepiert nicht die Sprungmarke

88 views
Skip to first unread message

Jürgen Stadermann

unread,
Jan 15, 2016, 12:39:24 PM1/15/16
to
Hallo und guten Tag.

Da habe ich zwei Arbeitsblätter.
Besser gesagt auf zwei Rechner die gleichen Arbeitsblätte, d.h. auf dem
einen Rechner eine Kopie der Arbeitsmappe.

Im VBA code ist jeweils die Sprungmarke, z.Bsp.

Goto abcde


abcd:

definiert.

Auf den einen Rechner klappt alles.
auf den anderen Rechner wird die Sprungmarke übergangen.
Ich schreibe die Sprungmarke neu, kopiere die Sprungmarke und setze sie
mit den Doppelpunkt ein.
Schreibe diese Abfolge mit anderen Sprungmarkenbegriff neu u.s.w..
Google, da steht alles Mögliche, aber nicht das was ich suche; oder ich
bin blind ...
So, nun bin ich wieder hier gelandet.
Ich probiere schon den ganzen Nachmittag dran herum.
Mit der Bitte um Hilfe.
Danke.

Jürgen

Claus Busch

unread,
Jan 15, 2016, 12:52:25 PM1/15/16
to
Hallo Jürgen,

Am Fri, 15 Jan 2016 18:39:09 +0100 schrieb Jürgen Stadermann:

> Auf den einen Rechner klappt alles.
> auf den anderen Rechner wird die Sprungmarke übergangen.

ist der Befehl mit Goto und die Sprungmarke absolut gleich in der
Schreibweise? Wird die Bedingung für den Goto-Befehl WAHR?
Falls das nicht hilft, poste bitte den kompletten Code von dem Rechner
auf dem es nicht funktioniert.


Mit freundlichen Grüßen
Claus
--
Vista Ultimate / Windows7
Office 2007 Ultimate / 2010 Professional

Jürgen Stadermann

unread,
Jan 16, 2016, 1:09:17 PM1/16/16
to
Am 15.01.2016 um 18:52 schrieb Claus Busch:
> Hallo Jürgen,
>
> Am Fri, 15 Jan 2016 18:39:09 +0100 schrieb Jürgen Stadermann:
>
>> Auf den einen Rechner klappt alles.
>> auf den anderen Rechner wird die Sprungmarke übergangen.
>
> ist der Befehl mit Goto und die Sprungmarke absolut gleich in der
> Schreibweise? Wird die Bedingung für den Goto-Befehl WAHR?
> Falls das nicht hilft, poste bitte den kompletten Code von dem Rechner
> auf dem es nicht funktioniert.
>
>
> Mit freundlichen Grüßen
> Claus
>
Hallo Claus.
Danke für Deine Antwort.
Ich bin der Sache schon ziemlich nahe gekommen.
Es liegt an der Zahlenformatierung.
Folgendes habe ich (meine ich ) sicher gestellt.
1. Die Zellen habe ich als Zahl formatiert.
2. Die Variable vorhSummeOhneUMBCHG als Double formatiert.

Goto forelle verzweigt zu einer Msg mit dem Hinweis falsches
Zahlenformat.etc.

Im ersten ähnlichen Fall nannte sich die Sprungmarke hecht.
(sieh es mir nach, was die Namensgebung betrifft ...)
Vor Allem steht onError goto Fehlermeldung, was dann bewirkte dass der
Sprung zur Msg ging.
Komlementiere ich die OnErrorgoto ... aus, kommt die Fehlermeldung >
Laufzeitfehler 13 > Typen unverträglich.


So, Alle relevanten Zellen und die Variable sind, so meine ich, passend
formatiert, trotzdem Fehlermeldung.

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>< hier ein Codeausschnitt

If CheckBox5.Value = True Then
ActiveCell.Offset(0, 8) = CDbl(TextBox3.Text)
vorhSummeOhneUMBCHG = ActiveCell.Offset(11, 8)
ActiveCell.Offset(11, 8) = vorhSummeOhneUMBCHG + ActiveCell.Offset(0, 8)

GoTo forelle
End If

ActiveCell.Offset(0, 6) = CDbl(TextBox3.Text)
'vorhSummeOhneUMBCHG = ActiveCell.Offset(12, 6)
vorhSummeOhneUMBCHG = ActiveCell.Offset(11, 6)
'''''''''''''''''''''''''''''''''''''''''''''##################################''13-09-2010
'ActiveCell.Offset(12, 6) = vorhSummeOhneUMBCHG + ActiveCell.Offset(0,6)
ActiveCell.Offset(11, 6) = vorhSummeOhneUMBCHG + ActiveCell.Offset(0, 6)



Ich hoffe ich konnte mich verständlich ausdrücken und bitte um Deine Hilfe.
Jürgen








Claus Busch

unread,
Jan 16, 2016, 1:47:05 PM1/16/16
to
Hallo Jürgen,

Am Sat, 16 Jan 2016 19:09:15 +0100 schrieb Jürgen Stadermann:

> If CheckBox5.Value = True Then
> ActiveCell.Offset(0, 8) = CDbl(TextBox3.Text)
> vorhSummeOhneUMBCHG = ActiveCell.Offset(11, 8)
> ActiveCell.Offset(11, 8) = vorhSummeOhneUMBCHG + ActiveCell.Offset(0, 8)
>
> GoTo forelle
> End If
>
> ActiveCell.Offset(0, 6) = CDbl(TextBox3.Text)
> 'vorhSummeOhneUMBCHG = ActiveCell.Offset(12, 6)
> vorhSummeOhneUMBCHG = ActiveCell.Offset(11, 6)
> '''''''''''''''''''''''''''''''''''''''''''''##################################''13-09-2010
> 'ActiveCell.Offset(12, 6) = vorhSummeOhneUMBCHG + ActiveCell.Offset(0,6)
> ActiveCell.Offset(11, 6) = vorhSummeOhneUMBCHG + ActiveCell.Offset(0, 6)

wo ist die Checkbox und die Textbox. Referenziere korrekt. Wenn sie auf
dem Blatt sind, setze den Blattnamen davor sonst den Namen der UserForm.
Außerdem bist du mit der Zuweisung der Werte zu umständlich. Warum
zuerst den Wert an eine Variable übergeben und dann wieder in die
gleiche Zelle zurückschreiben?

Ich habe das Ganze jetzt auf einem Blatt gemacht und dies funktioniert:

With ActiveSheet
If .CheckBox5.Value = True Then
ActiveCell.Offset(11, 8) = ActiveCell.Offset(11, 8) + CDbl(.TextBox3.Text)
GoTo forelle
End If

ActiveCell.Offset(11, 6) = ActiveCell.Offset(11, 6) + CDbl(.TextBox3.Text)
End With
forelle:
MsgBox "Klappt"
0 new messages