Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1648to1652
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

Kopieren von Füllfarbe in Liste

Kopieren von Füllfarbe in Liste
16.10.2018 16:40:25
Füllfarbe
Hallöchen Excelgurus,
ich habe einen Listenbereich mit Mehrfachauswahl für Mitarbeiter angelegt.
Mein Problem ist nun folgendes: Wenn ich eine Zelle, die ich farblich hinterlegt und mit Mitarbeitern gefüllt habe, in eine andere Zelle in dem Listenbereich kopieren will, erscheint die Füllfarbe für nur ca. 1 Sekunde und wird dann weiß. Der Text wird angezeigt. Wenn ich allerdings die Formatübertragung nutze, übernimmt Excel das Format durch ziehen in mehrere Zellen aber nicht in eine einzelne.
Nutze für den Listenbereich folgenden VBA-Code den ich im Internet gefunden habe:
Private Sub Worksheet_Change(ByVal Target As Range)
'** Mehrfachauswahl über DropDown-Liste (Gültigkeitsprüfung)
'** Einfügen im Code-Container des betreffenden Arbeitsblattes
'** Dimensionierung der Variablen
Dim rngDV As Range
Dim wert_old As String
Dim wertnew As String
'** Errorhandling
On Error GoTo Errorhandling
'** Mehrfachauswahl im definierten Bereich (Bsp. B4:B14) durchführen
If Not Application.Intersect(Target, Range("D14:W70")) Is Nothing Then
'**Range definieren
Set rngDV = Target.SpecialCells(xlCellTypeAllValidation)
If rngDV Is Nothing Then GoTo Errorhandling
'** Prüfen, ob eine gültige Zelle ausgewählt wurde und Werte eintragen
If Not Application.Intersect(Target, rngDV) Is Nothing Then
Application.EnableEvents = False
wertnew = Target.Value
Application.Undo
wert_old = Target.Value
Target.Value = wertnew
If wert_old  "" Then
If wertnew  "" Then
Target.Value = wert_old & ", " & wertnew
End If
End If
End If
End If
Application.EnableEvents = True
Exit Sub
Errorhandling:
Application.EnableEvents = True
Exit Sub
End Sub
Meine Vermutung ist das der Fehler hierbei etwas mit dem Variablen Typ String und der If-Schleife zu tun hat. Die Frage: Wie kann ich es umschreiben/ergänzen, sodass die kopierte Füllfarbe da bleibt?
Grüße und Danke schonmal,
René

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kopieren von Füllfarbe in Liste
16.10.2018 16:42:35
Füllfarbe
Halo René,
benutze Cope mit = überträgst Du nur den Wert.

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
AW: Kopieren von Füllfarbe in Liste
16.10.2018 16:59:03
Füllfarbe
Hallo Hajo,
meinst du copy? Also das Kopieren und Einfügen soll über die normalen Tastenkürzel von Excel ablaufen nicht im Code selbst. Da habe ich mich vielleicht etwas unklar ausgedrückt. Wüsste jetzt nicht wo ich das Copy einfügen sollte in dem Code.
Gruß
René
AW: Kopieren von Füllfarbe in Liste
16.10.2018 17:03:57
Füllfarbe
Hallo René,
ja schreibfehler.
Ich hatte mir den Code nicht angesehen.
Du machst doch alles in Target warum sollte da die Formatiwerung verloren gehen?
Ich baue keine Datei nach.
Gruß Hajo
Anzeige
AW: Kopieren von Füllfarbe in Liste
16.10.2018 17:45:04
Füllfarbe
Hi
1. im Internet findet man viel schlechten Code, deswegen sollte man lieber selber programmieren, als irgendwas ungeprüft übernehmen.
2. wenn der Code nicht das macht was er soll, schaltet man als erstes den pauschalen Errorhändler aus.
wenn du das machst wirst du ganz schnell feststellen, dass sich der Kollege, der den Code geschrieben hat, keine Gedanken darüber gemacht hat, was passiert wenn man mehrere Zellen gleichzeitig ändert, so dass Target mehr als eine Zelle umfasst.
Target.Value wird dann nämlich ein zweidimensionales Array und ein zweidimensonales Array kannst du nicht einer einfachen Stringvariable zuweisen.
Gruß Daniel
Anzeige
AW: Kopieren von Füllfarbe in Liste
17.10.2018 10:35:38
Füllfarbe
Hallo Daniel,
ich weiß, selber programmieren ist immer besser aber leider habe ich nicht so viel Ahnung von VBA um sowas selbst zu machen. Mir fehlen einfach viele Befehle und wie welche zusammenwirken.
Versuche es aber nachzuvollziehen.
Hier mal ein Auszug aus meiner Datei.
https://www.herber.de/bbs/user/124684.xlsm
Wie kann ich so eine Mehrfachauswahl sonst umsetzen? Eventuell mit einer Listbox?
Gruß René

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige