linked cell gleich aktive Zelle

Bild

Betrifft: linked cell gleich aktive Zelle
von: André
Geschrieben am: 22.04.2015 13:38:35

Hallo zusammen,
ich erstelle gerade eine Planungstabelle, welche ComboBoxen zum schnelleren Ausfüllen enthalten soll. Soweit habe ich alles. Inhalt ComboBox (CB) steht. Nun soll bei Anwahl CB der Inhalt in die aktuelle vom User angewählte Zelle geschrieben werden. Nach Recherche in verschiedenen Foren habe ich das auch geschafft. Benutzt habe ich folgenden VBA-COde:
Private


Sub ComboBox21_Change()
ActiveCell.Value=Me.ComboBox21
End Sub

Funktioniert auch super. Jetzt kommt das Problem: Sobald in der CB nach einer Anwahl der Wert sichtbar stehen bleibt, fügt Excel in jede Zelle automatisch den Wert ein. Auch wenn ich nicht die CB anwähle und selbst wenn ich den Text aktiv in die Zelle schreibe! Also: Zelle ist leer, ich schreibe händisch z.B. 14 rein, drücke Return, die 14 verschwindet und der zuletzt angewählte Eintrag der CB erscheint. Über die Option Rückgängig passiert gar nichts. Das sollte natürlich so nicht sein.
Kann jemand helfen?
Danke!
Grüße André

Bild

Betrifft: AW: linked cell gleich aktive Zelle
von: Rudi Maintaire
Geschrieben am: 22.04.2015 13:43:32
Hallo,
wenn die LinkeCell-Eigenschaft auf die aktive Zelle verweist, löst deren Änderung natürlich das Change-Event aus.
Gruß
Rudi

Bild

Betrifft: AW: linked cell gleich aktive Zelle
von: Daniel
Geschrieben am: 22.04.2015 13:47:33
Hi
probiere mal folgendes:
ins Selection-Change-Makro des Tabellenblatts kommt der Code:

Combobox21.LinkedCell = ActiveCell.Address

dann ist die Box immer mit der Aktiven Zelle verlinkt und in Zelle und Box steht immer der gleiche Wert (Excel führt dann automatisch eine Datenübertragung durch)
Rückgängig in verbindung mit Makros ist immer ein Problem.
Änderungen die per Makro durchgeführt werden, können grundsätzlich nicht rückgängig gemacht werden.
Auch wird dann der Rückgänig-Speicher geleert.
die Alternative wäre, dass du statt der Combobox für diese Zellen mit DATEN - DATENTOOLS - DATENÜBERPFÜFUNG als Gültigkeistkriterium eine Liste anlegst.
Die Auswahlmöglichkeiten dieser Liste erscheinen dann auch in der Zelle als DropDown wie in der Combobox.
gruß Daniel
Gruß Daniel

Bild

Betrifft: AW: linked cell gleich aktive Zelle
von: Rudi Maintaire
Geschrieben am: 22.04.2015 13:53:45
Hallo,
ich würde die LinkedCell leer lassen. Da per Change-Event eingetragen wird, braucht's die nicht.
Gruß
Rudi

Bild

Betrifft: AW: linked cell gleich aktive Zelle
von: André
Geschrieben am: 22.04.2015 14:02:21
Hallo Rudi,
vielen Dank für Deine schnelle Antwort. Linked Cell ist auf jeden Fall leer. Nur der Eintrag über VBA ist drin. Kann ich den Change-Event irgendwie umgehen oder verhindern, dass der von mir eingangs beschriebene Fall nicht passiert?

Bild

Betrifft: AW: linked cell gleich aktive Zelle
von: Daniel
Geschrieben am: 22.04.2015 14:09:14
Hi
wie ich schon schrieb:
das Change-Event der Combobox weglassen und im Selection-Change-Event des Tabellenblatts in die LinkedCell-Eigenschaft der Combobox die Adresse der Aktiven Zelle eintragen.
Gruß Daniel

Bild

Betrifft: AW: linked cell gleich aktive Zelle
von: André
Geschrieben am: 22.04.2015 14:17:34
Vielleicht habe ich mich etwas missverständlich ausgedrückt, aber die aktive Zelle soll natürlich immer eine andere, eine gerade gewählte sein. Somit bringt es mir nichts, in die Eigenschaft den Namen der aktiven Zelle einzutragen. Es bringt auch nichts in die benannte Eigenschaft LInked-Cell ActiveCell hineinzuschreiben. :-/

Bild

Betrifft: AW: linked cell gleich aktive Zelle
von: Rudi Maintaire
Geschrieben am: 22.04.2015 14:10:37
hallo,
das liegt nicht am von dir geposteten Code.
Gruß
Rudi

Bild

Betrifft: AW: linked cell gleich aktive Zelle
von: André
Geschrieben am: 22.04.2015 13:56:32
Hallo Daniel,
vielen Dank für die schnelle Antwort!
Sorry, aber was ist ein selection-change-makro? Wo wird das eingefügt. Nicht im VBA Code oder? Dort habe ich es versucht.

Bild

Betrifft: AW: linked cell gleich aktive Zelle
von: Daniel
Geschrieben am: 22.04.2015 14:14:34
Hi
das ist ein Evetnmakro des Tabellenblatts (so wie die Combobox ihr Eventmakros hat (Changeevent) haben auch Tabllenblätter ihre.
das SelectionChange-Event wird immer ausgelöst, wenn du Zellen auf dem Blatt selekierst
du findest die Eventmakros im Modul des jeweiligen Tabellenblatts.
zum erstellen eines solchen wählst du, wenn das Tabellenblattmodul im Editor aktiv ist, in der linken Combobox über dem Codefenster "Worksheet" aus und danach in der rechten Combobox das Event.
dann wird das Eventmakro im Codefenster automatisch erstellt und du brauchst nur noch den Code zwischen Start- und Endzeile eintragen.
Gruß Daniel

Bild

Betrifft: AW: linked cell gleich aktive Zelle
von: André
Geschrieben am: 22.04.2015 14:25:50
Okay, danke. Habe ich nun gefunden. Er meckert allerdings rum und führt es nicht aus. Excel markiert den Teil ActiveCell und schreibt in ein Fehlerfenster: Fehler beim Kompilieren: Außerhalb einer Prozedur ungültig.

Bild

Betrifft: AW: linked cell gleich aktive Zelle
von: Daniel
Geschrieben am: 22.04.2015 14:44:21
sorry, bin kein Hellseher
ich kenne deinen Code nicht und kann dir nicht sagen was du falsch gemacht hast.
ich gehe immer davon aus, dass jemand der hier Fragen stellt soviel Grundwissen hat, dass eine _ Befehlszeile immer zu einem Makro gehören muss und daher zwischen


Sub Makroname() und End 

Sub stehen muss und nie ausserhalb dieser beiden Zeilen.
Gruß Daniel

Bild

Betrifft: AW: linked cell gleich aktive Zelle
von: André
Geschrieben am: 22.04.2015 15:14:06
Kein Problem!
Ich habe was VBA angelangt gar kein Grundwissen und kopiere mir die Dinge hier zusammen. Habe jetzt verschiedenes versucht, bekomme es leider nicht hin. Schreibe unter VBA->Tabellenblatt, Combobox21 folgendes:

Private Sub Combobox21_Change()
Combobox21.LinkedCell=ActiveCell.Adress
End Sub


Bild

Betrifft: AW: linked cell gleich aktive Zelle
von: Daniel
Geschrieben am: 22.04.2015 15:24:58
nein, du musst das Changeevent der combobobx löschen.
dafür muss dieser Code ins Modul des Tabellenblatts, auf dem sich die Combobox befindet:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ComboBox21.LinkedCell = ActiveCell.Address
End Sub
Gruß Daniel

Bild

Betrifft: AW: linked cell gleich aktive Zelle
von: André
Geschrieben am: 22.04.2015 15:36:25
Vielen lieben Dank Daniel für Deine Geduld!!! Es funktioniert nun so, wie es sein sollte!!!

 Bild

Beiträge aus den Excel-Beispielen zum Thema "linked cell gleich aktive Zelle"