Code ignoring filtered (visible) tasks.
I am not sure you want to use column_counter on your filtered list because
your loop is going from row to row. If column_counter =100 then your loop
will evaluate rows(1:100). Your last filtered item may be on row 1900! It
may be best to loop the entire list and check each row's Hidden property.
For i = 1 to LastRow
If Rows(i).Hidden = False Then
'Do your code
Else
End If
Next i
Mike F
"Finius Eetch" wrote in message
...
mycat is a string in my I column or column 9 (defined as MyCategoryCol)
Export_Info(mycat as string)
{
...misc variables.
' Apply my filter.
Selection.AutoFilter Field:=MyCategoryCol, Criteria1:=mycat,
Operator:=xlAnd
' Count the number of filtered tasks.
column_counter = Application.WorksheetFunction.Subtotal(3, Range("I:I"))
For i = 1 To column_counter
' The QUESTION
buff = Selection.Cells(i, MyQuestionCol)
ConBuff = ""
For j = 1 To Len(buff)
If InfFont(Asc(Mid(buff, j, 1))) = 255 Then
MsgBox "Unrecognised characters in Question at line " & i &
", character # " & j & " (" & Chr(InfFont(Asc(Mid(buff, j, 1)))) & "),
table
entry " & Asc(Mid(buff, j, 1))
ConBuff = ConBuff + "?"
Else
ConBuff = ConBuff + Chr(InfFont(Asc(Mid(buff, j, 1))))
End If
Next j
Print #hfile, ConBuff
next i
... many more sections of data, but they are all basically the same as
this.
}
THE PROBLEM:
When I go through this loop, i always get the cells from the top, even
ones
that should be filtered. I don't know why this happens. When I filter by
"Kids" for example, the 217 rows that have info about the "kids" even
though
the actual row is at like 21,000 - I start getting entries from row 1,
which
is usually a different column like "History"
|