Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1948to1952
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

Daten in anderen Tabellenblättern suchen und in Felder eintr

Daten in anderen Tabellenblättern suchen und in Felder eintr
18.10.2023 16:56:11
Christian E.
Hallo an alle!

Ich habe wieder einmal ein Aufgabe vor mir, an der ich bislang in schöner Gleichmäßigkeit gescheitert bin....

Ich habe ein Tabelle (163551.xlsx), in die Dienstplankürzel eingetragen werden (z.B. in B4), diese sollen in Tabelle "DPA zulässig" und in "Tabelle DPA unzulässig" (in Datei: 163550.xlsx) gesucht werden. Jeweils nur die Spalten
Wenn gefunden, sollen die Wert die in der jeweiligen Zeile stehen, in die Felder B2, C2, B3 eingetragen werden. Dies soll sich dann in allen anderen möglichen
Feldern wiederholen. Die Spalte "E" wird nicht benötigt
Sollten jedoch mehr als zwei mal Daten aus der Tabelle "DPA unzulässig" genommen werden, müssten diese rot markiert werden...

Das ganze ist mir eindeutig zu hoch. Würde mich sehr freuen, wenn mich hierbei jemand unterstützen könnte.

https://www.herber.de/bbs/user/163550.xlsx
https://www.herber.de/bbs/user/163551.xlsx

Herzlichen Dank und viele Grüße,
Christian

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten in anderen Tabellenblättern suchen und in Felder eintr
18.10.2023 19:43:39
Oberschlumpf
Hi Christian,

was genau meinst du mit "Dies soll sich dann in allen anderen möglichen Feldern wiederholen." ?
Soll der manuelle Eintrag z Bsp nur in B4, B8, B12, B16 erfolgen - in DPD suchen/finden - und soll dann alles wiederholt jeweils für die ganze Woche eingetragen werden?
Oder willst du für jeden Tag manuell eingeben? B4, D4, F4 usw

Ciao
Thorsten
AW: Daten in anderen Tabellenblättern suchen und in Felder eintr
18.10.2023 20:03:11
Yal
Hallo Christian,

nun ja, ich hätte auch gern einen Zauberstab... :-)

in der Zelle B2 kommt diese Formel
=WENNFEHLER(SVERWEIS(B4;'[163550.xlsx]DPA zulässig'!$A:$E;2;0);SVERWEIS(B4;'[163550.xlsx]DPA unzulässig'!$A:$E;2;0))
in C2, dieselbe Formel mit Spalte 3 anstatt 2:
=WENNFEHLER(SVERWEIS(B4;'[163550.xlsx]DPA zulässig'!$A:$E;3;0);SVERWEIS(B4;'[163550.xlsx]DPA unzulässig'!$A:$E;3;0))
in B3, dieselbe Formel mit Spalte 4
=WENNFEHLER(SVERWEIS(B4;'[163550.xlsx]DPA zulässig'!$A:$E;3;0);SVERWEIS(B4;'[163550.xlsx]DPA unzulässig'!$A:$E;3;0))

In den anderen Blöcke wird D4, F4, H4, usw. dann für zwiete Woche B8, D8. Ich denke, der Muster ist erkennbar.

Um eine Markierung zu haben, dass die Zeiten von dem "unzulässig"-Blatt kommen, bräuchte man eine zusätzliche Zelle. Sonst ist eine Zählung, dass 2 Daten aus "unzulässig" kommen, nicht möglich.

Alles in einem versuchst Du mit dem Vorlag das "schöne" und das "praktisch" in einem zu haben. Das geht kaum oder nur mit viel -unnötiger- Komplexität. Aber darüber reden wir ... später.

VG
Yal

Anzeige
AW: Daten in anderen Tabellenblättern suchen und in Felder eintr
18.10.2023 20:41:24
ralf_b
oder mit ein bissel vba
den Code ins Codemodul des Blattes worin eingetragen werden soll.
Dateiname evtl. 163550.xlsx noch anpassen.


Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Range("B4:O4,B8:O8,B12:O12,B16:O16"), Target) Is Nothing Then


If Target.Cells(1).Value = "" Then
Application.EnableEvents = False
Target.Offset(-2).Resize(2, 2).Value = ""
Application.EnableEvents = True
Exit Sub
End If

Dim obj, fund

Set obj = GetObject(ThisWorkbook.Path & "" & "163550.xlsx")

With obj.Worksheets("DPA zulässig").UsedRange.Columns(1)
fund = Application.Match(Target.Cells(1).Value, .Value, 0)

If IsNumeric(fund) Then
Application.EnableEvents = False
Target.Offset(-1).Value = .Cells(fund).Offset(, 1).Value
Target.Offset(-2).Value = .Cells(fund).Offset(, 2).Value
Target.Offset(-2).Cells(1, 2).Value = .Cells(fund).Offset(, 3).Value
Application.EnableEvents = True
Else
MsgBox "Kürzel existiert nicht oder ist nicht zulässig."
End If

End With
End If
End Sub

Anzeige
AW: Danke Kollegen das euch meine Arbeit gefallen hat oWt
19.10.2023 01:10:52
Piet
...
AW: Danke Kollegen das euch meine Arbeit gefallen hat oWt
19.10.2023 05:29:08
Christian E.
Hallo noch mal!

Wahnsinn, vielen Dank an alle, die mich hier so schnell und kompetent unterstützt haben und wie ich sehe, eine perfekte Lösung hatten.
Ich probiere das heute morgen mal an den vollständigen Daten aus!

Viele Grüße und eine schöne Restwoche,

Christian
AW: Daten in anderen Tabellenblättern suchen und in Felder eintr
18.10.2023 20:09:00
Christian E.
Hallo und guten Abend, Yal!

Prima, vielen Dank! Ich schaue es mir morgen früh an und versuche es nachzuvollziehen!

Nochmals Danke für die Unterstützung!

VG
Christian
Verflixt und zugenäht!
18.10.2023 20:11:54
Yal
habe die Spalte 4 in der dritte Formel nicht angepasst:
B2 =WENNFEHLER(SVERWEIS(B4;'[163550.xlsx]DPA zulässig'!$A:$E;2;0);SVERWEIS(B4;'[163550.xlsx]DPA unzulässig'!$A:$E;2;0))
C2 =WENNFEHLER(SVERWEIS(B4;'[163550.xlsx]DPA zulässig'!$A:$E;3;0);SVERWEIS(B4;'[163550.xlsx]DPA unzulässig'!$A:$E;3;0))
B3 =WENNFEHLER(SVERWEIS(B4;'[163550.xlsx]DPA zulässig'!$A:$E;4;0);SVERWEIS(B4;'[163550.xlsx]DPA unzulässig'!$A:$E;4;0))

D2 =WENNFEHLER(SVERWEIS(D4;'[163550.xlsx]DPA zulässig'!$A:$E;2;0);SVERWEIS(D4;'[163550.xlsx]DPA unzulässig'!$A:$E;2;0))
E2 =WENNFEHLER(SVERWEIS(D4;'[163550.xlsx]DPA zulässig'!$A:$E;3;0);SVERWEIS(D4;'[163550.xlsx]DPA unzulässig'!$A:$E;3;0))
D3 =WENNFEHLER(SVERWEIS(D4;'[163550.xlsx]DPA zulässig'!$A:$E;4;0);SVERWEIS(D4;'[163550.xlsx]DPA unzulässig'!$A:$E;4;0))

B6 =WENNFEHLER(SVERWEIS(B8;'[163550.xlsx]DPA zulässig'!$A:$E;2;0);SVERWEIS(B8;'[163550.xlsx]DPA unzulässig'!$A:$E;2;0))
C6 =WENNFEHLER(SVERWEIS(B8;'[163550.xlsx]DPA zulässig'!$A:$E;3;0);SVERWEIS(B8;'[163550.xlsx]DPA unzulässig'!$A:$E;3;0))
B7 =WENNFEHLER(SVERWEIS(B8;'[163550.xlsx]DPA zulässig'!$A:$E;4;0);SVERWEIS(B8;'[163550.xlsx]DPA unzulässig'!$A:$E;4;0))
...

VG
Yal
Anzeige
AW: Verflixt und zugenäht!
18.10.2023 20:39:15
Piet
Hallo

ich habe keinen Zauberstab, aber ein funktionierendes Target Makro.
Das war eine harte Nuss, wegen den verflixten verbundenen Zellen!
Einfach mal anschauen. DPA Kürzel eingeben und schauen was passiert.

Auch mal bewusst falsch eingeben zum testen. Ebenso mit "unzulässlg" Eingaben
https://www.herber.de/bbs/user/163559.xls

mfg Piet

AW: Verflixt und zugenäht!
18.10.2023 21:15:56
Yal
Hallo Piet,

sieht gut aus. Ich habe nur den "> 2" in "%gt;= 2" geändert, ein wiederholten "if" als "else" platziert und den EnableEvents von Anfang bis Ende gebracht (der "Target.Value = Empty" hätte sonst ausgelöst).

Public unzulässig As Integer  'addiert unzulässig


Private Sub Worksheet_Change(ByVal Target As Range)
Dim WbKurz As Workbook 'DPA Kürzel
Dim rFind As Range

If Target.Cells.Count > 1 Then Exit Sub
If Target.Value = Empty Or Target.Value = "" Then Exit Sub

If Cells(Target.Row, 1) = "DPA" And Cells(1, Target.Column) = "Start" Then
Application.EnableEvents = False
Target.Select
Set WbKurz = Workbooks("163550.xls")
Set rFind = WbKurz.Worksheets("DPA zulässig").Columns(1).Find(What:=Target, LookAt:=xlWhole, MatchCase:=False)

If rFind Is Nothing Then
Set rFind = WbKurz.Worksheets("DPA unzulässig").Columns(1).Find(What:=Target, LookAt:=xlWhole, MatchCase:=False)
If Not rFind Is Nothing Then
unzulässig = unzulässig + 1
If unzulässig >= 2 Then
MsgBox "2x unzulässig gewählt - Abbruch!", vbCritical
'Target.Value = Empty ' ich würde es drin lassen: sonst sieht man nicht, was man nicht eingeben soll!
Exit Sub
End If
MsgBox unzulässig & " x 'unzulässig' aufgetreten!"
Else
MsgBox "Dieses Kürzel ist nicht bekannt!"
Exit Sub
End If
End If

Application.EnableEvents = False
Target.Offset(-2, 0).Value = rFind.Offset(0, 1)
Target.Offset(-1, 0).Value = rFind.Offset(0, 3)
Target.Offset(-2, 0).Cells(1, 2) = rFind.Offset(0, 2)
Target.Offset(0, 2).Select
End If
Application.EnableEvents = True
End Sub
Anzeige
AW: Daten in anderen Tabellenblättern suchen und in Felder eintr
18.10.2023 19:57:46
Christian E.
Hallo, Thorsten,

vielen Dank für deine Rückfrage. Ja, ich würde gerne jeden Tag manuell eingeben und die Felder jeweils darüber sollen sich dann füllen...

Vielen Dank!

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige