VBA Selectie op voorwaarden die er niet zijn

Status
Niet open voor verdere reacties.
Dank!!

Works like a charme: selectie te kopiëren regels.

Maar, hoe is in onderstaande code te verklaren dat de regels op BladA t/m Blad ontfilterd worden?

Code:
Sub kopieer_bevindingen()

Dim sh As Worksheet, OvzM As Worksheet
Set OvzM = Sheets("Overzicht_Email")
For Each sh In Sheets(Array("BladA", "BladB", "BladC", "BladD", "BladE"))
   With sh.Cells(1).CurrentRegion
    .AutoFilter 11, Array("Known Issue", "NOK", "Opmerking"), 7
     Union(.Offset(1, 9).Resize(, 4), .Offset(1).Resize(, 1)).Copy OvzM.Cells(Rows.Count, 2).End(xlUp).Offset(1)
    .AutoFilter
    
   End With
Next sh
End Sub


Regel 25 leeg laten heb ik als volgt opgelost:

Code:
Sub gegevens_selecteren()
' Deze macro selecteert een gebied vanaf B9 wat via mail verzonden wordt.

   Sheets("Overzicht_Email").Select
   'Range("B9:G" & Range("B9").End(xlDown).Row - 0).Select
   lastrow = ActiveSheet.UsedRange.Rows.Count
   Range("B9", "G" & lastrow - 0).Select

End Sub
 
Met "ontfilterd" worden bedoel je dat er geen filters meer staan?

ps. Die 0 in lastrow - 0 doet echt niets hoor.

10 - 0 = 10
 
Dat ontfilteren heb ik opgelost door dezelfde 'filtering' weer toe te passen na de .Autofilter:

Code:
Sub kopieer_bevindingen()
'
' Deze macro selecteerd alle testgevallen die voldoen aan aan status "Known Issue", "NOK", "Opmerking"
' En kopieert deze naar het tabblad Overzicht onder kolom B, eerste lege regel.

Dim sh As Worksheet, OvzM As Worksheet
Set OvzM = Sheets("Overzicht_Email")
For Each sh In Sheets(Array("BladA", "BladB", "BladC", "BladD", "BladE"))
   With sh.Cells(1).CurrentRegion
    .AutoFilter 12, Array("Known Issue", "NOK", "Opmerking"), 7
    '      Kolom A,                Kolom J,                   Kolom L en M
     Union(.Offset(1).Resize(, 1), .Offset(1, 9).Resize(, 1), .Offset(1, 11).Resize(, 2)).Copy OvzM.Cells(Rows.Count, 2).End(xlUp).Offset(1)
    .AutoFilter
     [COLOR="#FF0000"]sh.Range("A1:R" & Range("A1").End(xlDown).Row - 0).AutoFilter Field:=6, Criteria1:="V"
     sh.Range("A1:R" & Range("A1").End(xlDown).Row - 0).AutoFilter Field:=18, Criteria1:="Actief"[/COLOR]
   End With
Next sh

' Omlijning matrix zetten die is gekopiert
    OvzM.Range("B26").Select
    ActiveCell.CurrentRegion.Borders.LineStyle = xlContinuous

End Sub

Ik ben de sheet aan het testen door in kolom L (12) verschillende realistische resultaten te zetten. BladE (laatste blad) heeft eigenlijk altijd 'OK'.
Wat nu ineens wel optreedt (wel op een windows machine maar niet op een macbook waar het voorbeeld-bestand op is gemaakt):
Als de laatste sheet geen "Known Issue", "NOK", "Opmerking" maar alleen "OK" kopieert hij alle "OK" regels naar het overzicht.
Ondanks dat de Array toch echt iets anders aangeeft.

Dat snap ik nog niet.
Helaas komt dit in het voorbeeld bestand niet voor...???

Dank voor alle aanwijzingen.
 
Laatst bewerkt:
Laat dat eens zien met je bestand en de niet werkende code.


Onderstaand stukje code werkt ook niet juist doordat je de range neemt van het werkblad waar de knop staat.
Code:
R" & Range("A1").End(xlDown).Row

Je hebt daar "sh" vergeten in op te nemen, en laat die nul eens weg.

Dat stukje kan ook wel anders geschreven worden.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan