Excelbat
Gebruiker
- Lid geworden
- 23 mrt 2012
- Berichten
- 403
Hi All,
Eerlijk gejat van internet en aangepast naar wat ik wil.
Ik probeer echter dit soort dingen ook te begrijpen, en met de helpfunctie van Microsoft (F1) kom ik er ook niet uit.
Waarom geeft Ubound -1 terug ??? En daarmee samenhangende vraag: waarom LBound 0 ???
Als je de code handmatig doorloopt met F8, en het 'direct venster' zichtbaar hebt, dan zie je wat ik bedoel.
In mijn simpele beleving moet Ubound altijd een positief getal zijn groter dan 0.
Greetz/Excelbat
Eerlijk gejat van internet en aangepast naar wat ik wil.
Ik probeer echter dit soort dingen ook te begrijpen, en met de helpfunctie van Microsoft (F1) kom ik er ook niet uit.
Waarom geeft Ubound -1 terug ??? En daarmee samenhangende vraag: waarom LBound 0 ???
Code:
Sub Filter_Match()
Dim strNames As Variant, strSubNames As Variant
strNames = Array("Sheet4", "Sheet5", "Sheet1")
For J = ThisWorkbook.Sheets.Count To 1 Step -1
strSubNames = Filter(strNames, ThisWorkbook.Sheets(J).Name)
If UBound(strSubNames) - LBound(strSubNames) + 1 > 0 Then
Debug.Print "Well done" & " " & ThisWorkbook.Sheets(J).Name & " " & UBound(strSubNames) & " " & LBound(strSubNames)
Else
Debug.Print "Delete" & " " & ThisWorkbook.Sheets(J).Name & " " & UBound(strSubNames) & " " & LBound(strSubNames)
End If
Next J
End Sub
Als je de code handmatig doorloopt met F8, en het 'direct venster' zichtbaar hebt, dan zie je wat ik bedoel.
In mijn simpele beleving moet Ubound altijd een positief getal zijn groter dan 0.
Greetz/Excelbat