|  
                                             
	Hallo! 
	 
	Brauche dringend Hilfe. Habe zwei Tabellen vorliegen. In Tabelle „Tabelle1“ werden das Datum sowie die Mitarbeiter-Nr. für den jeweiligen Tag eingetragen. Es können auch mehrere Mitarbeiter an einem Tag arbeiten. Diese Daten sollen nun in Tabelle „MASTER“ übertragen werden. Habe ein Makro geschrieben welches die Tabelle Master (in der die Mitarbeiter-Nr. alle verzeichnet sind) durchläuft und sich jede Mitarbeiter-Nr. und jeden Tag für den Monat merkt und überprüft ob er diese Werte in Tabelle1 findet. Wenn eine Übereinstimmung erfolgt soll eine 1 eingetragen werden, oder falls der Mitarbeiter an dem Tag öfter vorkommt eine 2, 3 etc. 
	Einige Macken hat das ganze allerdings, ich hoffe ihr könnt mir helfen. 
	1) Wenn in Tabelle1 ein Datum (z.B. 22.04.2016 mehr als einmal vorkommt, wird die zweite Datenreihe nicht mehr beachtet) – liegt wohl daran, dass die Schleife stoppt sobald sie das Datum in Tabelle1 gefunden hat, wie kann ich das beheben? 
	2) Das Arbeitsblatt Tabelle1 soll in der Datei weitere x-Mal vorkommen. Vom Aufbau her sind sie alle identisch. Nun soll das geschriebene Makro ALLE Arbeitsblätter durchlaufen und prüfen also auch Tabelle2, Tabelle3 etc. (auch wenn ein neues Blatt hinzugefügt wird). 
	Sub berechnung() 
	  
	Dim Spalte As Integer, Zeile As Integer, NrDatum As Integer, Spalte1 As Integer 
	Dim Datum As Date 
	Dim Anzahl As Integer, Arbeiter As Integer 
	Dim MaxArbeiter As Integer, MaxTage As Integer 
	Dim Eingabe As String 
	Eingabe = InputBox("Anzahl der Mitarbeiter", "Mitarbeiter 
	If Eingabe = "" Then Exit Sub 
	MaxArbeiter = CInt(Eingabe)                                     
	Eingabe = InputBox("Anzahl der Tage im Monat", "Monat")        
	If Eingabe = "" Then Exit Sub 
	MaxTage = CInt(Eingabe)                                         
	For Zeile = 4 To MaxArbeiter + 4 
	  Arbeiter = Worksheets("MASTER").Cells(Zeile, 5).Value     
	  For Spalte = 6 To MaxTage + 6 
	    Datum = Worksheets("MASTER").Cells(3, Spalte).Value     
	    For NrDatum = 6 To 23                                       
	      If Worksheets("Tabelle1").Cells(NrDatum, 1).Value = Datum Then Exit For   
	    Next NrDatum 
	    Anzahl = 0 
	    For Spalte1 = 5 To 15                                           
	      If Worksheets("Tabelle1").Cells(NrDatum, Spalte1).Value = Arbeiter Then Anzahl = Anzahl + 1   
	    Next Spalte1 
	    Worksheets("MASTER").Cells(Zeile, Spalte).Value = Anzahl    
	  Next Spalte 
	Next Zeile                                                          
	End Sub 
	 
	 
	Vielen Dank im Voraus! 
     |