Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
816to820
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
816to820
816to820
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

CommandButton auslesen

CommandButton auslesen
03.11.2006 15:29:14
frank
Hallo zusammen,
stehe wiedermal auf dem Schlauch. In der Recherche gibt es viele gleichlautenden Themen aber zu meinem Problem bin ich nicht fündig geworden.
Ich öffne per Doppelklick in einer Zelle eine Userform - darin befindet sich ein Commandbutton. Ich möchte nun die Caption und die Hintergrundfarbe in die aktive Zelle übernehmen.
Bei der ersten Zeile kommt Methode oder datenobjekt nicht gefunden und bei der zweiten wird der name der aktiven Zelle in den Button übernommen.
Wo hänge ich mich denn auf?
Gruß Frank

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
With UserForm1
.Target.Address = .CommandButton_urlaub.Caption
.CommandButton_urlaub.caption = Target.Address
.Show
End With
Cancel = True
End Sub

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: CommandButton auslesen
03.11.2006 16:04:31
Nepumuk
Hallo Frank,
.Target.Address = .CommandButton_urlaub.Caption
1. An dem Punkt vor Target hängts. Damit beziehst du dich auf das Userform und das kennt natürlich kein Target.
2. Ist Target.Address eine schreibgeschützte Eigenschaft. Der kannst du keinen neuen Wert zuweisen
.CommandButton_urlaub.caption = Target.Address
Das übergibt die Adresse der angeklickten Zelle an den Commandbutton. Wenn du die Schriftfarbe aus der Zelle in den Button übernehmen willst, musst du die richtige Eigenschaft des Buttons und der Zelle zusammenbringen. Also:
.CommandButton_urlaub.BackColor = Target.Font.Color
(ungetestet!!!)
Gruß
Nepumuk
Anzeige
AW: CommandButton auslesen
03.11.2006 17:38:04
frank
Hallo Nepomuk,
Danke für Deine Erklärung.
Ich möchte aber die Caption und die Hintergrundfarbe des Buttons in die Zelle übernehmen.
Frank
bei Deinem Beisp. mit der Hintergrundfarbe wird aber der Button schwarz eingefärbt egal welche Zellfarbe ich anklicke.?
AW: CommandButton auslesen
03.11.2006 17:52:51
frank
.. bin's nochmal.
wenn ich den Punkt vor Target aber weglasse bekomme ich die Meldung" Zuweisung zu einer Konstanten nicht zulässig und ".Address" ist markiert?
Frank
AW: CommandButton auslesen
03.11.2006 18:05:50
Heinz
Hi,

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
With UserForm1
Target = .CommandButton1.Caption
Target.Interior.Color = .CommandButton1.BackColor
.Show
End With
Cancel = -1
End Sub

mfg Heinz
Anzeige
AW: CommandButton auslesen
03.11.2006 18:29:02
frank
Hallo Heinz,
jetzt funktionierts so wie ich es haben möchte.
Habe aber, wie kanns anders sein eine Zusatzfrage.
Meine UF hat 5 Buttons mit verschiedenen Captions und backColors.
Habe mir gedacht - biste schlau - kopierst den Code einfach noch vier mal - denkste.
Wie schreibe ich das denn um, damit sich das system nicht aufhängt?
Hatte es schon mit Target1,2 usw. probiert.
Oder muß ich für jeden Button eine eigene with Umgebung anlegen?
Frank
AW: CommandButton auslesen
03.11.2006 18:35:28
Heinz
Hi,
bei BeforeDoubleClick ist Target eine einzelne Zelle, in welche anderen Zellen
sollen denn die Caption und die Farben?
mfg Heinz
Anzeige
AW: CommandButton auslesen
03.11.2006 18:46:06
frank
Hallo Heinz,
ich habe mir einen Kalender gebastelt.
Wenn ich eine x beliebige Zelle in ihm doppelklicke geht eine UF auf. In der habe ich 5 Buttons aus denen ich auswählen möchte,entweder Urlaub, Krank, Lehrgang etc. In jedem Button steht als Caption der jeweilige Buchstabe der eingetragen werden soll.
Habe jetzt versucht Deine Anweisung 4 mal zu kopieren incl. With Anweisung.
Ergebnis es werden alle Anweisungen nacheinander abgearbeitet und die letzte eingeschrieben. Das ist aber Falsch!!!
Es ist auch so, das wenn ich einmal einen Button in meiner UF ausgewählt hatte, dass dann die UF geschlossen werden muß, damit ich mir eine neue Zelle aussuchen kann. Mit einem Button klappt das wunderbar!!!
Gruß Frank
Anzeige
AW: CommandButton auslesen
03.11.2006 19:02:39
Heinz
Hi,
du ziehst das verkehrt auf, bei Buttonklick die Zellen füllen. Zeig die Userform nicht modal an, dann kannst du die Zellen in der Tabelle markieren.
mfg Heinz
AW: CommandButton auslesen
03.11.2006 19:14:16
frank
Hi zurück,
wie Userform nicht modal anzeigen?
Ich habe ja noch größeres vor und wollte einen Schritt vor den anderen machen.
Später soll es mal so aussehen. Zellposition anklicken - UF erscheint mit Auswahl - wenn ich nun auf den Urlaubsbutton klicke erscheint eine weitere wo ich zwischen 1 und 31 Tagen auswählen will. Habe ich mich nun für die Anzahl der Tage entschieden sollen halt die Zellen ab der ausgewählten mit der Captionoption + Backcolor des Buttons gefüllt werden. Zuerst will ich aber einen Schritt vor den anderen machen und die ausgewählte Zelle mit den 5 Buttons unabhängig von einander füllen.
Hast Du noch nen Tip für mich in der Schublade?
Danke fürs lesen
Frank
Anzeige
AW: CommandButton auslesen
03.11.2006 21:21:57
frank
...
habe mir Deinen Ratschlag angenommen und die UF ungebunden gesetzt sowie das Füllen der aktiven Zelle über die Commandbuttons getätigt.

Private Sub CommandButton_urlaub_Click()
ActiveCell.Value = CommandButton_urlaub.Caption
ActiveCell.Interior.Color = CommandButton_urlaub.BackColor
End Sub

Ich kann aber nur die Zelle auswählen mit der ich die UF aktiviert habe. Wenn ich mehrere Zellen markiere und mein CommandButton_urlaub betätige wird nur die eine ausgefüllt.
Weißt Du vielleicht warum?
Gruß Frank
AW: CommandButton auslesen
03.11.2006 21:25:34
Heinz
Hi,
ActiveCell ist immer nur eine einzelne Zelle, verwende stattdessen Selection.
mfg Heinz
Anzeige
AW: CommandButton auslesen
03.11.2006 21:31:37
frank
... die Welt ist so klein das man das einfachste einfach nicht sieht.
Danke, danke
Frank
AW: CommandButton auslesen
03.11.2006 22:39:16
frank
... bist Du noch munter.
Es kommt wie es immer kommt, ein Problem gelößt - steht das nächste vor der Tür.
Wenn ich die Selection Methode anwende würde ich gern Zellen davon ausnehmen wollen. Und zwar sind bei mir alle samstage, sonntage und feiertage grau (colorindex= 15) hinterlegt.
Wie stelle ich es an, dass wenn der User 20 Zellen markiert jene grauen nicht überschrieben werden?
Dachte mir das so in der weise unten aber es funzt nicht. Womöglich liegts am guten Rotwein den man sich zum Wochenabschluß genehmigt hat.
Gruß Frank

Private Sub CommandButton_lehrgang_Click()
If Cells.Interior.Color = 15 Then
Range(Target.Address).Value = ""
Selection.Value = CommandButton_lehrgang.Caption
Selection.Interior.Color = CommandButton_lehrgang.BackColor
End If
End Sub

Anzeige
AW: CommandButton auslesen
03.11.2006 22:47:52
Heinz
Hi,
färb die Wochenenden mittels bedingter Formatierung grau, diese Farbe hat dann Vorrang gegenüber normaler Formatierung.
mfg Heinz
AW: CommandButton auslesen
03.11.2006 22:50:29
frank
He, noch munter - super!!
Habe die zellen über bedingte Formatierung eingefärbt.
Ist das nicht index 15 - ich weiß dass es noch mehr gibt!
Trotzdem der Code sieht irgendwie hilflos aus, oder?
Frank
AW: CommandButton auslesen
03.11.2006 23:19:31
Heinz
Hi,
"Trotzdem der Code sieht irgendwie hilflos aus, oder?"
Keine Ahnung, wenn er seinen Zweck erfüllt, ist es doch gut, oder?
mfg Heinz
AW: CommandButton auslesen
03.11.2006 23:26:16
frank
.... der code macht eben nichts!!! Das ist ja das Problem!!
Trotzdem Danke für Deine tolle Hilfe.
Werde jetzt ins Bett verschwinden - morgen steht wieder eine harte 12h Schicht an.
In diesem Sinne
Gutes Nächtle aus Dresden!!
Bis morgen
Frank
Anzeige
AW: CommandButton auslesen
05.11.2006 05:38:36
paula
hi,

Private Sub CommandButton_urlaub_Click()
Dim c As Range
For Each c In Selection   'für jede zelle in Markierung
c = CommandButton_urlaub.Caption
c.Interior.Color = CommandButton_urlaub.BackColor
nexc c
End Sub

u.s.w für die anderen CommandButtons
PS: Es stimmt, Bedingte Formatierung hat Vorrang
Gruss paula
Rückmeldung, ob es so passt,wäre gut

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige