Thema Datum  Von Nutzer Rating
Antwort
27.04.2016 16:02:11 punikaa
Solved
27.04.2016 20:16:22 Gast70416
NotSolved
27.04.2016 20:38:53 Gast55401
NotSolved
27.04.2016 20:20:09 Gast15784
NotSolved
27.04.2016 20:35:43 Gast77154
NotSolved
27.04.2016 20:38:05 Gast12941
NotSolved
Rot Blätter durchlaufen und Wiederholungen
27.04.2016 21:53:19 Gast58172
NotSolved
27.04.2016 22:01:02 Gast87390
NotSolved
28.04.2016 14:00:20 Gast90810
NotSolved

Ansicht des Beitrags:
Von:
Gast58172
Datum:
27.04.2016 21:53:19
Views:
725
Rating: Antwort:
  Ja
Thema:
Blätter durchlaufen und Wiederholungen

Hallo nochmal! Also habe mir das nochmal angeschaut und deinen Code ein wenig umgestellt und auskommentiert. Würde ich an deiner Stelle auch immer machen. Hilft später zum Verständnis und bei Fragen (weiß man, was eigentlich passieren sollte). :-) ISt nicht gestestet, da ich die Ausgangsdaten nicht hatte. SOllte aber eigentlich klappen. Was willst du den in allen Blättern machen? So wie ich es verstanden habe, würde ich das mit den Blättern dann aber der neuen Zuordnung Anazhl = 0 machen. Frage dabei noch. Wo liegt den Master, ganz am Anfang in der MItte oder am Ende (von der Nummerierung wie sie im VBE zu sehen ist). Davon hängt ab, wie du die Schleife aufbauen musst. Ansonsten besteht die Gefahr, dass du auch Master ausliest, was ggf. zu ungewollten Ergebnisse führen würde. HIer erstmal der Code für ein Blatt. Wenn der klappt, kann man ihn ja erweitern. Schönen Abend noch

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

'hier fehlte am Ende mindestens ") -bitte mal prüfen, ob da noch mehr stand
Eingabe = InputBox("Anzahl der Mitarbeiter", "Mitarbeiter")
'ergänzt um Prüfung ob es eine Zahl ist
If Eingabe = "" Or Not IsNumeric(Eingabe) Then Exit Sub
' könnte eigentlich raus
MaxArbeiter = CInt(Eingabe)

Eingabe = InputBox("Anzahl der Tage im Monat", "Monat")
'ergänzung um Prüfung Zahl
If Eingabe = "" Or Not IsNumeric(Eingabe) Then Exit Sub
'könnte auch raus
MaxTage = CInt(Eingabe)

For Zeile = 4 To MaxArbeiter + 4
    ' Name des Arbeiters festlegen
    Arbeiter = Worksheets("MASTER").Cells(Zeile, 5).Value
    'Anzahl schon mal auf 0 setzen
    Anzahl = 0
    For Spalte = 6 To MaxTage + 6
        'Datum festlegen
        Datum = Worksheets("MASTER").Cells(3, Spalte).Value
        
        'NrDatum wird gesucht
        For NrDatum = 6 To 23
            ' wenn NrDatum gefunden, dann Datum suchen, es werden alle Daten überprüft und nicht vorher beendet, so sollte alle dabei sein
            If Worksheets("Tabelle1").Cells(NrDatum, 1).Value = Datum Then
                'Arbeiter suchen , würde alt. auch mit eine excelinternen Funktion gehen bspw. countif(Bereich, Suchwert)
                For Spalte1 = 5 To 15
                    If Worksheets("Tabelle1").Cells(NrDatum, Spalte1).Value = Arbeiter Then Anzahl = Anzahl + 1
                Next Spalte1
      
            End If

        Next NrDatum
        ' Anzahl eintragen
        Worksheets("MASTER").Cells(Zeile, Spalte).Value = Anzahl

    Next Spalte

Next Zeile

End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
27.04.2016 16:02:11 punikaa
Solved
27.04.2016 20:16:22 Gast70416
NotSolved
27.04.2016 20:38:53 Gast55401
NotSolved
27.04.2016 20:20:09 Gast15784
NotSolved
27.04.2016 20:35:43 Gast77154
NotSolved
27.04.2016 20:38:05 Gast12941
NotSolved
Rot Blätter durchlaufen und Wiederholungen
27.04.2016 21:53:19 Gast58172
NotSolved
27.04.2016 22:01:02 Gast87390
NotSolved
28.04.2016 14:00:20 Gast90810
NotSolved