Заранее спасибо и извините за плохой английский!
Я хочу
Fix 100 -> Текущий столбец и последний номер строки?
Клетки (100, ActiveCell.column)) ---> клетки (???, activeecell.column))
Sub ExcelVBA_CurrentValuecu_Filter()
ActiveSheet.Range(Cells(1, ActiveCell.Column), Cells(100, ActiveCell.Column)).AutoFilter Field:=1, Criteria1:=ActiveCell.Value
End Sub
1 ответ
Попробуйте этот код:
Sub ExcelVBA_CurrentValuecu_Filter()
With ThisWorkbook.ActiveSheet
.Range(.Cells(1, ActiveCell.Column), .Cells(.Rows.Count, ActiveCell.Column).End(xlUp)). _
AutoFilter Field:=1, Criteria1:=ActiveCell.Value
End With
End Sub
Заявление .Cells(.Rows.Count, ActiveCell.Column).End(xlUp)
найдет последнюю ячейку в вашем столбце, которая имеет данные в нем. Я использовал блок With
, чтобы правильно квалифицировать все диапазоны, которые вы используете в вашем коде. Вот почему есть точка .
перед .Cells
. Это то же самое, что всегда писать ActiveSheet.Cells
.
Похожие вопросы
Связанные вопросы
Новые вопросы
excel
Только для вопросов по программированию для объектов или файлов Excel или для разработки сложных формул. Вы можете объединить тег Excel с VBA, VSTO, C #, VB.NET, PowerShell, OLE-автоматизацией и другими тегами и вопросами, связанными с программированием, если это применимо. Общая помощь по MS Excel для функций одного листа доступна в Super User.