Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Zahl in Mappe1 eingeben, diese in Mappe2 einfärben

Forumthread: Zahl in Mappe1 eingeben, diese in Mappe2 einfärben

Zahl in Mappe1 eingeben, diese in Mappe2 einfärben
20.11.2025 01:12:32
Heike
Hallo,

ich benötige dringend eure Hilfe.

In der 1.Mappe „FP“, Blatt M1, M2, M3, gebe ich Zahlen untereinander ein, nach jeder Eingabe, soll Excel prüfen, ob diese Zahl in der 2. Mappe „WP“, Blatt WP. vorhanden ist. Wenn ja, dann soll die Zelle hier farblich (gelb) ausgefüllt werden, wenn nein, dann eine Fehlermeldung mit Abbruch.

Die Zahlen kommen je Arbeitsmappe nur einmal vor.

Weiterhin möchte ich gerne, dass, wenn ich in der 1.Mappe „FP“ bei Montag (Zelleintrag in A1) bzw. Dienstag (Zelleintrag in A12) usw., eine Zahl ab A4 eingebe´, dass Excel zusätzlich den Zelleintrag aus B1 bzw. B12 bzw. B23 (Kennziffer) in die Mappe „WP“, Blatt WP ab Zelle C2 schreibt.

Für ein besseres Verständnis, habe ich 2 Beispieldateien angefügt.

Es wäre super, wenn mir jemand eine Lösung geben würde. Dafür bedanke ich mich schon einmal im Voraus.

Viele Grüße Heike

https://www.herber.de/bbs/user/179659.xlsx

https://www.herber.de/bbs/user/179660.xlsx


Anzeige

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zahl in Mappe1 eingeben, diese in Mappe2 einfärben
20.11.2025 07:53:57
schauan
Hallöchen,
Für die erste Aufgabe würde ich mir die Zahlen aus der anderen Mappe holen und eine Datengültigkeit einrichten.
Die Farbe bekommst Du dann mit der bedingten Formatierung hin. Prinzip: Wenn was in der Zelle steht, dann gelb.
... reinholen...
20.11.2025 08:00:16
schauan
... mit PQ ... Bekommst Du das hin?
AW: ... reinholen...
20.11.2025 11:32:29
Heike
Hallo schauan, vielen Dank für deine Antwort.

da ich ja auch noch das Kennziffer mit übertragen muss, würde ich es lieber über VBA lösen. Eine Prüfung und Übertragung kann dann auch per Button erfolgen.
PQ ist leider keine Option.

VG Heike
Anzeige
AW: ... reinholen...
20.11.2025 20:54:14
schauan
Hallöchen,

man könnte das so lösen. Übrigens hast Du nicht eingeschränkt, wo genau die Zahl eingegeben und verglichen wird - daher ist das so geschrieben das es jeweils das ganze Blatt betrifft. Der Code kommt in das Codemodul "DieseArbeitsmappe" wo die Eintragungen erfolgen.

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

'wenn irgendwo in diese Mappe eine Zahl eingegeben wird, dann
If IsNumeric(Target.Value) Then
'wenn diese Zahl irgendwo auf "WP" in Mappe 2 steht, dann
'Hinweis: Dateiname anpassen!
If Application.CountIf(Workbooks("179660.xlsx").Sheets("WP").Cells, Target.Value) Then
'Eingabezelle gelb faerben
Target.Interior.Color = 65535
'nicht wenn diese Zahl irgendwo auf "WP" in Mappe 2 steht, dann
Else
'Meldung ausgeben
MsgBox "Eintrag nicht vorhanden"
'Makro verlassen
Exit Sub
'Ende wenn diese Zahl irgendwo auf "WP" in Mappe 2 steht, dann
End If
'Ende wenn irgendwo eine Zahl eingegeben wird, dann
End If
'wenn in diese Mappe Spalte B in eine einzelne 11. Zelle ab Zelle 1 was eingegeben wird, dann
If (Target.Row - 1) Mod 11 = 0 And Target.Column = 2 And Target.Cells.Count = 1 Then
'Mit der Zielmappe, Blatt "WP"
With Workbooks("179660.xlsx").Sheets("WP")
'Eingabe in Spalte C nach letztem Eintrag anhaengen
.Cells(.Rows.Count, 3).End(xlUp).Offset(1) = Target.Value
'Ende Mit der Zielmappe, Blatt "WP"
End With
'Ende wenn in diese Mappe Spalte B in eine einzelne 11. Zelle ab Zelle 1 was eingegeben wird, dann
End If
Anzeige
AW: ... reinholen...
20.11.2025 21:40:14
Heike
Hallo schauan, vielen Dank für den Code.

Aber er funktioniert nicht. Die Zahl gebe ich in´Mappe FP in Spalte A ein (für dich zur Info, da ich es tatsächlich nicht geschrieben hatte).

Wenn ich die Zahl eintrage, wird die Zahl (Zelle) auch in Mappe FP gelb ausgefüllt, nicht in der Mappe WP.
Auch wird nicht die entsprechende Kennziffer übertragen.

Freue mich über weitere Unterstützung von dir. Dankeschön.

VG Cordula
Anzeige
Übertrag funktioniert doch ...
20.11.2025 21:48:09
Heike
Hey,
Kennzifferübertragung funktioniert doch! Sorry, hatte mich "verguckt".

Nur mit der Farbe klappt es noch nicht.

VG Heike
AW: Übertrag funktioniert doch ... NICHT (sorry)
20.11.2025 22:26:34
Heike
Hey,
die Übertragung der Kennziffer funktioniert doch nicht. Keine Ahnung, was ich da vorhin gesehen habe. Tut mir leid.

VG Heike
AW: Übertrag funktioniert doch ... NICHT (sorry)
20.11.2025 22:51:57
schauan
1)
... also, in WP sollte nix gelb gefärbt werden ... Ansonsten kannst Du ja einfach eine bedingte Formatierung machen, wenn die Zellen in Spalte C nicht leer sind, dann gelb...
2)
... kommt ein Fehler oder passiert nix? Wenn nix passiert, hast Du eventuell keine Zahl eingegeben, sondern einen Text?


Anzeige
AW: Übertrag funktioniert doch ... NICHT (sorry)
20.11.2025 23:23:54
Heike
Hey,
zu1: In WP soll gelb gefärbt werden, wenn die eingegebene Zahl in FP mit der in WP übereinstimmt.

zu2: Das Kennziffer ist ein fester Bestandteil in der Tabelle (Mappe FP) und deswegen überträgt das Makro nicht. Erst, wenn ich das Kennziffer noch einmal in die Zelle schreibe, wird übertragen. Dann aber leider im WP ganz starr untereinander, nicht der entsprechenden Zahl zugeordnet.

VG Heike
Anzeige
AW: Übertrag funktioniert doch ... wie beschrieben ...
21.11.2025 08:13:39
schauan
Hallöchen,

zu1: In WP soll gelb gefärbt werden, wenn die eingegebene Zahl in FP mit der in WP übereinstimmt.

Du schriebst in der Aufgabe:

In der 1.Mappe „FP“, Blatt M1, M2, M3, gebe ich Zahlen untereinander ein, nach jeder Eingabe, soll Excel prüfen, ob diese Zahl in der 2. Mappe „WP“, Blatt WP. vorhanden ist. Wenn ja, dann soll die Zelle hier farblich (gelb) ausgefüllt werden, wenn nein, dann eine Fehlermeldung mit Abbruch.

"hier" ist für mich die 1.Mappe, die zweite ist für mich "dort" Wäre auch schwierig in WP, wenn es die Zahl dort mehrfach gibt - welche soll dann eingefärbt werden ???

Es fehlt lediglich was bei der Einschränkung. Also statt
If IsNumeric(Target.Value) Then
dann
If IsNumeric(Target.Value) And Target.Column = 13 And Target.Cells.Count = 1 Then
um das auf Spalte M und eine einzelne Zelle zu beschränken.


... Erst, wenn ich das Kennziffer noch einmal in die Zelle schreibe, ... dann aber leider im WP ganz starr untereinander, nicht der entsprechenden Zahl zugeordnet.

Du schriebst in der Aufgabe:

dass Excel zusätzlich den Zelleintrag aus B1 bzw. B12 bzw. B23 (Kennziffer) in die Mappe „WP“, Blatt WP ab Zelle C2 schreibt.

Da steht nichts von irgendwo zuordnen ... Die Aktion wird ausgeführt, wenn Du in B1, B12, B23 usw. etwas einträgst. Wenn Du einen vorhanden Zellinhalt übernehmen willst, wäre die Frage, welchen, wann, wohin ...


Anzeige
AW: Übertrag funktioniert doch ... wie beschrieben ...
21.11.2025 10:56:44
Heike
Guten Morgen schuan,

die Zahlen kommen pro Arbeitsmappe nur einmal vor. In FP (Spalte A) gebe ich die Zahl ein, in WP (Spalte B) soll Excel sie suchen (nur einmaliges Vorkommen) und dort (Spalte B diese Zelle) gelb einfärben.

Der Zelleintrag (der ändert sich nie) aus FP der Zellen B1 bzw. B12 bzw. B23 (Kennziffer) soll in WP (Spalte C) zugeordnet werden, und zwar immer zu der lfd. Nr., also dann zu der Zahl, die gelb hinterlegt wurde.
Beispiel: Je 6 Zellen werden mit der lfd Nr (Zahl) ausgefüllt, oberhalb von diesen steht z.B. 1/1.
Diese 6 Zahlen stehen bereits im WP (in beliebigen Zellen der Spalte B) und nun soll die Kennzfiffer z.B. 1/1, der jeweiligen Zahl zugeordnet werden.

Vielen Dank für deine Geduld schuan.

Gruß Heike
Anzeige
@schauan, weitere Unterstützung?
22.11.2025 12:04:13
Heike
Guten Morgen schauan,

unterstützt du mich noch weiter? Würde mich sehr freuen, Danke im voraus.

Gruß Heike
AW: @schauan, weitere Unterstützung?
22.11.2025 13:03:20
schauan
Hallöchen,

dann so:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

Dim rngFundstelle As Range
'wenn in Spalte A in diese Mappe eine Zahl eingegeben wird, dann
'Beachte: Keine Kontrolle, ob Daten dazwischen eingegeben wurden!
If IsNumeric(Target.Value) And Target.Column = 1 And Target.Cells.Count = 1 Then
'Hinweis: Dateiname anpassen!
'Mit dem Blatt WP in ...
With Workbooks("179660.xlsx").Sheets("WP")
'Eintrag suchen
Set rngFundstelle = .Columns(2).Find(what:=Target.Value, LookIn:=xlValues, lookat:=xlWhole)
'wenn gefunden, dann
If Not rngFundstelle Is Nothing Then
'Fundzelle gelb faerben
rngFundstelle.Interior.Color = 65535
'Eingabe neben den Treffer in C in ... uebertragen, eventuell vorhandener Inhalt wird ueberschrieben!
rngFundstelle.Offset(, 1) = Cells(Target.Row - (Target.Row - 1) Mod 11, 2).Value
'wenn nicht gefunden, dann
Else
'Meldung ausgeben
MsgBox "Eintrag nicht vorhanden"
'Makro verlassen
Exit Sub
'Ende wenn gefunden, dann
End If
End With
'Ende wenn in Spalte A in diese Mappe eine Zahl eingegeben wird, dann
End If
End Sub
Anzeige
AW: @schauan, perfekt
22.11.2025 15:34:48
Heike
Hallo schauan,

an meinen Testdateien passt es super. Vielen vielen Dank. Werde es heute Abend an den Originaldateien testen. Denke aber, das kriege ich hin.

Ansonsten würde ich mich gerne noch einmal melden, ok?

Danke danke danke

Gruße Heike
@schauan: läuft super, dennoch 1 Frage
26.11.2025 23:15:41
Heike
Hallo schauan,
dein Code passt prima, nur hatte ich 1 Sache nicht beachtet, und zwar:

Die Tabellenblätter MO1, MO2, MO3 haben zwischen den Kennzeichen 10 Zeilen, dein Code hierzu "... (Target.Row - 1) Mod 11, 2).Value ...) /funktioniert

Die Tabellenblätter MO4, MO5 haben aber zwischen den Kennzeichen 100 Zeilen.

Würdest du mir bitte schreiben, wie ich entsprechend deinen Code erweitern kann?

Vielen Dank im voraus.

Gruß Heike
Anzeige
AW: @schauan: läuft super, dennoch 1 Frage
27.11.2025 19:38:10
schauan
HalloHeike,

Du musst die 11 entsprechend erhöhen, eventuell auf 101 Der Thread ist aber inzwischen im Archiv gelandet, dass ich jetzt noch antworten kann ist nur "übergangsweise"
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18