Thema Datum  Von Nutzer Rating
Antwort
Rot Schleife in Schleife
23.04.2018 14:19:09 GastPulpFiction_2018
NotSolved
23.04.2018 19:24:26 AlterDresdner
*****
Solved
26.04.2018 18:30:56 Gast81190
NotSolved

Ansicht des Beitrags:
Von:
GastPulpFiction_2018
Datum:
23.04.2018 14:19:09
Views:
168
Rating: Antwort:
  Ja
Thema:
Schleife in Schleife
Hallo zusammen

Ich komme zurzeit mit meinem VBA programm nicht weiter:
Das Programm soll folgende Funktion erfüllen:

'Äussere Schleife'
1) VBA geht in eine bestimmte Spalte und geht Zeile um Zeile durch. 
   Wenn der Inhalt der Zeile = "Laser", soll es in die Innereschleife gehen.

'Innere Schleife'
2) VBA geht in eine bestimmte Zeile und geht Spalte um Spalte durch.
   Wenn der Inhalt der Spalte(Tage eines Jahres) = "Wochentag", soll es die CountIf Funktion anwende.

Mit hilfe des Programms soll ermittelt werden an welchen Tagen ein Mitarbeiter frei hat "F" und diese in der vorgegebenen 
Zeile aufsumieren. Mit diesen Angaben soll später die Kapazität dieser Mitarbeiter festgestellt werden können.

Hätte jemand eine gute Idee um dieses Programm zum laufen zu bringen?
Ist es möglich diese zwei Schleifen geschachtelt zum laufen zu bringen?

Wünsche euch eine schöne Woche 
und für jeden Input danke ich schon im Voraus!

Liebe Grüsse
GastPulpFiction_2018 


Sub Zellen_Iteration_Abt_Laser()

'Dim Bestimmung'
Dim c As Range
Dim Sp As Integer
Dim cell As Range

'Äussere Schleife'
For Each c In Worksheets("Tabelle1").Range(Cells(7, 5), Cells(60, 5)).Cells
'Hier zeigt der Debug fehler an: Application-defined or object-dfined error
    
    'Parameter Bestimmung'
    MsgBox Sp
    n = 0
    Sp = 7
    MyCOUNTIF = 0
    Zeil = 5

    If Sheets("Tabelle1").Cells(Zeil, 7).Value = "Laser" Then
    Zeil = Zeil + 1

        'Cells(Zeile, Spalte)
        'For Each a In Worksheets("Tabelle1").Range(Cells(6, 6), Cells(6, 370)).Cells
        
        For Each cell In Worksheets("Tabelle1").Range(Cells(6, 6), Cells(6, 370)).Cells

        'Day1 = Worksheets("Tabelle1").Range(Cells(6, Sp)).Value
        Day1 = cell.Value
        Weekday1 = Weekday(Day1)
            If Weekday1 <= 5 Then
            
            MyCOUNTIF = 0
            MyCOUNTIF = Application.WorksheetFunction.CountIf(Worksheets("Tabelle1").Range(Cells(7, Sp), Cells(60, Sp)), "F")
            ' MsgBox MyCOUNTIF
            Sheets("Tabelle1").Cells(62, Sp).Value = MyCOUNTIF
            Sp = Sp + 1
            n = n + 1
            'MsgBox Sp
   
            Else
   
            Sp = Sp + 1
            n = n + 1
    
            End If
        Next cell
   
  Else
  
  Zeil = Zeil + 1
  
  End If

Next c

End Sub


 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst genau und ausführlich
  • 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
  • Bitte markieren Sie Ihre Anfrage als erledigt wenn Ihnen geholfen wurde
Thema: Name: Email:

 
 

Thema Datum  Von Nutzer Rating
Antwort
Rot Schleife in Schleife
23.04.2018 14:19:09 GastPulpFiction_2018
NotSolved
23.04.2018 19:24:26 AlterDresdner
*****
Solved
26.04.2018 18:30:56 Gast81190
NotSolved