Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
18.09.2007 08:46:03 |
Tina |
|
|
|
18.09.2007 20:32:05 |
jh |
|
|
|
19.09.2007 10:19:32 |
Tina |
|
|
|
19.09.2007 10:33:14 |
jh |
|
|
|
19.09.2007 11:42:55 |
jh |
|
|
|
19.09.2007 12:54:43 |
Tina |
|
|
|
19.09.2007 14:56:16 |
Tina |
|
|
|
19.09.2007 16:07:26 |
jh |
|
|
|
20.09.2007 08:12:04 |
Tina |
|
|
Aw:Aw:Aw:Aw:Aw:Nachtrag |
20.09.2007 11:40:21 |
jh |
|
|
|
21.09.2007 07:17:38 |
Tina |
|
|
Von:
jh |
Datum:
20.09.2007 11:40:21 |
Views:
1052 |
Rating:
|
Antwort:
|
Thema:
Aw:Aw:Aw:Aw:Aw:Nachtrag |
Hallo,
wie ich das sehe brauchst du die Objektvariable LetzteZelle nur dazu, dass die Auswahl von dem zuletzt in der Sub FarbeSetzen ausgewählten Shape wieder auf die letzte Zelle zurückgeht. Der Befehl sh.Select in dieser Sub ist aber überflüssig, da du den Text auch ändern kannst, ohne das Shape zu selektieren. Übrigens ist wohl ActiveWorkbook.Shapes ein Tippfehler, denn wenn das wirklich so in deinem Code steht, müsste da ein Fehler kommen, weil die Shapes zum Worksheet-Objekt gehören.
Sub FarbeSetzen(F As Boolean)
Dim sh As Shape
For Each sh In ActiveSheet.Shapes
If Left$(sh.TextFrame.Characters.Text, 6) = "Färben" Then
If Farbe Then
sh.TextFrame.Characters.Text = "Färben AUS"
Else
sh.Textframe.Characters.Text = "Färben EIN"
End If
Exit For
End If
Next sh
End Sub
Danach kannst du in der Sub Farbmodus die Zeile LetzteZelle.Select löschen.
In der Sub FarbeSetzen ist es übrigens recht umständlich, das gesuchte Shape anhand seiner Beschriftung zu finden. In der Beispieldatei die du upgeloadet hast, ist das Shape, dessen Text du ändern willst, Worksheets("Tabelle1").Shapes(3). Wenn das immer so ist, geht es viel einfacher:
Sub FarbeSetzen()
With Worksheets("Tabelle1").Shapes(3)
If Farbe Then
.TextFrame.Characters.Text = "Färben AUS"
Else
.Textframe.Characters.Text = "Färben EIN"
End If
End With
End Sub
Da Farbe eine globale Variable ist, musst du sie nicht als Parameter übergeben. Übrigens verwendest du in deinem Code den übergebenen Parameter F ja auch nicht, sondern greifst auf die Variable Farbe zu.
Nimm mir die Bemerkung nicht übel, aber dein Code ist ziemlich mit der heißen Nadel gestrickt und an vielen Stellen revisionsbedürftig.
Gruß
|
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
18.09.2007 08:46:03 |
Tina |
|
|
|
18.09.2007 20:32:05 |
jh |
|
|
|
19.09.2007 10:19:32 |
Tina |
|
|
|
19.09.2007 10:33:14 |
jh |
|
|
|
19.09.2007 11:42:55 |
jh |
|
|
|
19.09.2007 12:54:43 |
Tina |
|
|
|
19.09.2007 14:56:16 |
Tina |
|
|
|
19.09.2007 16:07:26 |
jh |
|
|
|
20.09.2007 08:12:04 |
Tina |
|
|
Aw:Aw:Aw:Aw:Aw:Nachtrag |
20.09.2007 11:40:21 |
jh |
|
|
|
21.09.2007 07:17:38 |
Tina |
|
|