Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1540to1544
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

Zwei Codes funktionieren nicht zusammen

Zwei Codes funktionieren nicht zusammen
22.02.2017 14:09:37
OliVBA
Sehr geehrtes Forum,
leider habe ich folgendes Problem:
Ich habe mich zweier Codes aus diesem und einem anderen Forum bedient. Beide Codes funktionieren separat, also auf einzelnen Tabellenblätter bzw in einzelnen Projekten. Sobald ich jedoch beide Codes in einem einzigen Codefenster einfüge, sodass beide Codes für ein Tabellenblatt funktionieren, läuft jeweils nur ein Code bzw. keiner von beiden.
Erster Code dient der Mehrfachauswahl bei Dropdownzellen:

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. A1:A6) durchführen
If Not Application.Intersect(Target, Range("A1:A100")) 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
wertold = Target.Value
Target.Value = wertnew
If wertold  "" Then
If wertnew  "" Then
Target.Value = wertold & ", " & wertnew
End If
End If
End If
Application.EnableEvents = True
End If
Errorhandling:
Application.EnableEvents = True
End Sub
Der zweite Code ermöglicht Formularzellen, wobei der Text in der Zelle beim anklicken verschwindet:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address(0, 0) = "A7" And Target.Value = "abc" Then
Application.EnableEvents = False
Target.Value = ""
Application.EnableEvents = True
Else
If [A7].Value = "" Then [A7].Value = "abc"
End If
If Target.Address(0, 0) = "A14" And Target.Value = "def" Then
Application.EnableEvents = False
Target.Value = ""
Application.EnableEvents = True
Else
If [A14].Value = "" Then [A14].Value = "def"
End If
If Target.Address(0, 0) = "A36" And Target.Value = "bitte hier eintragen" Then
Application.EnableEvents = False
Target.Value = ""
Application.EnableEvents = True
Else
If [A36].Value = "" Then [A36].Value = "bitte hier eintragen"
End If
End Sub
Wie kann ich beide Codes gemeinsam auf einem Tabellenblatt zum Laufen bringen? Ich nutze Excel 2010 aufwärts.
Vielen Dank bereits im Voraus für die Mühe! :D

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zwei Codes funktionieren nicht zusammen
22.02.2017 14:14:18
Der
Hallo,
es wäre hilfreich, die Ursprungs-Posts zu verlinken, damit man den Hintergrund der Codes besser versteht.
Wo hast Du die Codes eingefügt? In ein "normales" Modul oder in das Modul der Tabelle?
Gruß
Steuerfuzzi
AW: Zwei Codes funktionieren nicht zusammen
22.02.2017 21:30:06
OliVBA
Erstmal vielen Dank für die Antwort Steuerfuzzi:
Ursprungspost für die Mehrfachdropdown-Auswahl:
http://www.excel-inside.de/funktionen-a-tipps/895-dropdown-liste-mit-mehrfachauswahl
Ursprungspost für die Formularzelle, die beim Anklicken verschwindet
https://www.herber.de/forum/archiv/848to852/849522_Autom_Zelltext_der_bei_anklicken_verschwindet.html
Die Codes habe ich in das Codefenster des Tabellenblattes kopiert, da sie merkwürdigerweise im Modul auch nicht funktionieren.
Anzeige
AW: Zwei Codes funktionieren nicht zusammen
23.02.2017 13:43:13
OliVBA
Die Codes habe ich in das Modul Tabelle1 eingefügt, dort wo auch beide Codes laufen sollen.
Wie gesagt, einzeln laufen die Codes einwandfrei und beide laufen auch wenn ein Code im Modul "Tabelle1" und der andere in "Tabelle2" enthalten ist. Dies ist aber nicht Sinn der Sache, denn die beiden Codes sollen einfach auf Tabellenblatt 1 funktionieren.
Sobald die Codes in einem allgemeinen Modul oder im Modul "dieseArbeitsmappe" eingefügt werden laufen sie garnicht mehr.
Nochmals beide Codes zusammen:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address(0, 0) = "A7" And Target.Value = "TEST" Then
Application.EnableEvents = False
Target.Value = ""
Application.EnableEvents = True
Else
If [A7].Value = "" Then [A7].Value = "TEST"
End If
If Target.Address(0, 0) = "A14" And Target.Value = "TEST2" Then
Application.EnableEvents = False
Target.Value = ""
Application.EnableEvents = True
Else
If [A14].Value = "" Then [A14].Value = "TEST2"
End If
End Sub
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. A1:A100) durchführen
If Not Application.Intersect(Target, Range("A1:A100")) 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
wertold = Target.Value
Target.Value = wertnew
If wertold  "" Then
If wertnew  "" Then
Target.Value = wertold & ", " & wertnew
End If
End If
End If
Application.EnableEvents = True
End If
Errorhandling:
Application.EnableEvents = True
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige