Thema Datum  Von Nutzer Rating
Antwort
Rot finde den Fehler in "ForEachNext" Schliefe
05.10.2022 14:56:56 Uschi
NotSolved
05.10.2022 16:59:53 ralf_b
NotSolved
06.10.2022 14:18:39 uschi
NotSolved
06.10.2022 15:11:43 Gast65451
NotSolved
06.10.2022 15:41:40 Mase
NotSolved
07.10.2022 07:53:41 uschi
NotSolved
07.10.2022 10:28:18 Mase
NotSolved

Ansicht des Beitrags:
Von:
Uschi
Datum:
05.10.2022 14:56:56
Views:
367
Rating: Antwort:
  Ja
Thema:
finde den Fehler in "ForEachNext" Schliefe

hallo,

 

es tut was es soll, nur tut es das nur mit dem ersten tabellenblatt, aber es soll es mit allen tabellenblättern machen, außer denen, die ich mit dem IF InStr ausgeschlossen habe. ich denke es liegt an der zuweisung der WS variablen. 

---------

Sub Std_macro()
 '
' Stundenauswertung
'


'Variable fuer das neue Workbook
    Dim Wb As Workbook
    Dim WS As Worksheet
        


'Variable für den Dateinamen der Ausgangsdatei inkl. Pfad
    Dim strOpenFile As Variant


'Quelldatei auswaehlen
    strOpenFile = Application.GetOpenFilename(, , "Waehlen die aktuelle Stundenauswertungs-Exceldatei aus:")

'Falls kein Datei ausgewaehlt wurde
    If strOpenFile = False Then Exit Sub

'Oeffnet die neue Datei und weist sie der Variablen wb zu.
    Set Wb = Workbooks.Open(strOpenFile, UpdateLinks:=0, ReadOnly:=False)

'Variable WS zuweisen
   Set WS = Wb.ActiveSheet
    
      
'schleife zeilen löschen starten
For Each WS In Wb.Worksheets

'NUR FELDER VON PERSONEN BETREFFEND

If InStr(",ReadMe,Projektliste,change history,Summe Verrechnung,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30, ", "," & WS.Name & ",") = 0 Then

       
        'löschen bestimmter Zeilen
                         
        With WS.Range("A17")
         If (.Text = "SALSA" Or .Text = "Salsa" Or .Text = "kein Konto" Or .Text = "9182613200") Then Rows("17").Delete
        End With
        
         With WS.Range("A16")
         If (.Text = "SALSA" Or .Text = "Salsa" Or .Text = "kein Konto" Or .Text = "9182613200") Then Rows("16").Delete
        End With
        
         With WS.Range("A15")
         If (.Text = "SALSA" Or .Text = "Salsa" Or .Text = "kein Konto" Or .Text = "9182613200") Then Rows("15").Delete
        End With
        
                    
 
 End If
 Exit For
 Next WS
 
  
 'Zieldatei speichern unter ...
         ActiveWorkbook.SaveAs Filename:=Wb.Path & "zwischenspeicher"
     
  
  
    
    
    
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
Rot finde den Fehler in "ForEachNext" Schliefe
05.10.2022 14:56:56 Uschi
NotSolved
05.10.2022 16:59:53 ralf_b
NotSolved
06.10.2022 14:18:39 uschi
NotSolved
06.10.2022 15:11:43 Gast65451
NotSolved
06.10.2022 15:41:40 Mase
NotSolved
07.10.2022 07:53:41 uschi
NotSolved
07.10.2022 10:28:18 Mase
NotSolved