I'm using the following code to do first an advanced filter. Then I need to change the filtered range (except headers) to uppercase avoiding looping as it would slow things too much. But there is something wrong in the last line, and I get a #VALUE! error in all filtered cells. does anybody know what is not working here?
Sub upper()
Dim rgdata As Range
Dim rgcriteria As Range
'filter
Set rgdata = Worksheets("sheet1").Range("A16").CurrentRegion
Set rgcriteria = Worksheets("sheet1").Range("A12").CurrentRegion
rgdata.AdvancedFilter xlFilterInPlace, rgcriteria
'upper
Dim rngup As Range
Set rngup = worksheets("sheet1").Range("A16").CurrentRegion.SpecialCells(xlCellTypeVisible).offset(1,0)
rngup = evaluate("index(upper(" & rngup.address & "),)")
End Sub
Offset(1,0)
should be used beforeSpecialCells