Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Datenüberprüfung: Auswahl abhängig von vorheriger Auswahl
#1
Hallo zusammen,

es geht um eine Datei zur Zeiterfassung. Für jeden Mitarbeiter gibt es eine Datei. Momentan gibt es ein Arbeitsblatt (Blatt 1), auf dem alle Projekte aus einer anderen Datei referenziert sind (externer Bezug). Auf Blatt 2 kann man nun in einer Spalte eines dieser Projekte im drop down Menü auswählen (Datenüberprüfung).

Natürlich ist nicht jeder Mitarbeiter in jedem Projekt. Ich würde also gerne die Auswahl personalisieren.
Auf Blatt 2 wird schon der Name des Mitarbeiters eingegeben (könnte ich auch in eine Auswahl ändern).
Mein Gedanke ist also, auf Blatt 1 hinter den Projekten pro Mitarbeiter eine Spalte zu erstellen, in der markiert wird, ob derjenige das Projekt in der Auswahl erhalten soll oder nicht und über die Namensangabe dann diese Auswahl zu treffen.

Hoffe ich habe das verständlich erklärt.
Lässt sich das möglichst ohne VBA irgendwie umsetzen?
Antworten Top
#2
Hallo,

ne anonymisierte Bsp.-Datei hilft beim helfen! :15:
VG
von René und seinen 3 Gehirnzellen

Antworten Top
#3
Hier mal eine stark vereinfachte Beispieldatei.

Im Moment werden jedem MA alle Projekte zur Auswahl gegeben. Mein Wunsch wäre es eben, in Blatt "Projektliste" die Auswahl pro Mitarbeiter zu treffen*, die dann im ersten Blatt angezeigt wird.

*prinzipiell egal wie, ob mit Kreuzchen oder anders

edit: mal als .xlsx hochgeladen anstatt .xlsm


Angehängte Dateien
.xlsx   Timesheet_TEST - Kopie.xlsx (Größe: 17,88 KB / Downloads: 5)
Antworten Top
#4
Hallo, ich habe noch nicht verstanden, was du vorhast... Willst du den Mitarbeiter vorgeben und nur die Projekte in der Auswahl (Dropdown) haben, die mit einem x markiert sind..?
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht

"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Antworten Top
#5
Hi,

ich glaube das was Du vor hast, ist eine bedingte Gültigkeitsprüfung. Keine Ahnung ob das mit einer Gültigkeitsprüfung möglich ist.
Wenn in Tabelle "Projektliste" beim Mitarbeiter ein "x" für das jeweilige Projekt eingetragen ist, dann zeige in Tabelle "Time sheet" nach Auswahl eines Mitarbeiters in Zelle "C2" nur die für ihn eingetragegen Projekte in Spalte "D".
Habe ich das  so in etwa richtig verstanden?

Gruß
Ich
Antworten Top
#6
Geht doch.

Gruß
Ich


Angehängte Dateien
.xlsx   Timesheet_TEST - Kopie.xlsx (Größe: 19,03 KB / Downloads: 5)
Antworten Top
#7
Hallo, ich hatte das so verstanden..:

Arbeitsblatt mit dem Namen 'Projektliste'
 ABCD
1Project DescriptionMitarbeiter1Mitarbeiter2Mitarbeiter3
2Projekt Ax x
3Projekt Bxx 
4Projekt Cxx 
5Projekt Dxxx
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg

Arbeitsblatt mit dem Namen 'Time sheet'
 ABCDEFGHIJ
1Time sheet       
2Employee nameMitarbeiter2       
3          
4CWDateDayProject descriptionWorking hours Projekt B Projekt B 
53501.09.2016ThursdayProjekt C5 Projekt C   
63502.09.2016FridayProjekt D4 Projekt D   
7    9 #ZAHL!   

NameBezug
Projekt_Auswahl='Time sheet'!$G$4:INDEX('Time sheet'!$G:$G;VERGLEICH("*";'Time sheet'!$G:$G;-1))

ZelleFormel
G4=INDEX(Projektliste!$A$1:$A$5;AGGREGAT(15;6;ZEILE(Projektliste!$A$1:$A$5)/(INDEX(Projektliste!$B$1:$D$5;;VERGLEICH($C$2;Projektliste!$B$1:$D$1;0))="x");ZEILE(A1)))
I4=$G$4:INDEX($G:$G;VERGLEICH("*";$G:$G;-1))
A5=WENN(B5<>"";KALENDERWOCHE(B5;21);"")
C5=WENN(B5<>"";TEXT(B5;"[$-409]TTTT");"")
G5=INDEX(Projektliste!$A$1:$A$5;AGGREGAT(15;6;ZEILE(Projektliste!$A$1:$A$5)/(INDEX(Projektliste!$B$1:$D$5;;VERGLEICH($C$2;Projektliste!$B$1:$D$1;0))="x");ZEILE(A2)))
A6=WENN(B6<>"";KALENDERWOCHE(B6;21);"")
C6=WENN(B6<>"";TEXT(B6;"[$-409]TTTT");"")
G6=INDEX(Projektliste!$A$1:$A$5;AGGREGAT(15;6;ZEILE(Projektliste!$A$1:$A$5)/(INDEX(Projektliste!$B$1:$D$5;;VERGLEICH($C$2;Projektliste!$B$1:$D$1;0))="x");ZEILE(A3)))
E7=TEILERGEBNIS(109;E5:E6)
G7=INDEX(Projektliste!$A$1:$A$5;AGGREGAT(15;6;ZEILE(Projektliste!$A$1:$A$5)/(INDEX(Projektliste!$B$1:$D$5;;VERGLEICH($C$2;Projektliste!$B$1:$D$1;0))="x");ZEILE(A4)))

ZelleGültigkeitstypOperatorWert1Wert2
C2Liste Mitarbeiter1;Mitarbeiter2;Mitarbeiter3 
D5Liste =Projekt_Auswahl 
D6Liste =Projekt_Auswahl 
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht

"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Antworten Top
#8
@Jockel: Das geht genau in die richtige Richtung, muss ich mir mal anschauen, wenn ich die Zeit dazu finde. Vielen Dank.

@IchBinIch: Bei deiner Variante müsste ich pro Mitarbeiter jedes Projekt auflisten. Am saubersten finde ich es, wenn die Projektliste nur einmal gepflegt werden muss, vor allem da die Liste in der Originaldatei mit externem Bezug erstellt wird.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste