- 帖子
- 4901
- 主題
- 44
- 精華
- 24
- 積分
- 4916
- 點名
- 181
- 作業系統
- Windows 7
- 軟體版本
- Office 20xx
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台北
- 註冊時間
- 2010-4-30
- 最後登錄
- 2025-7-25
               
|
本帖最後由 Hsieh 於 2012-7-28 19:41 編輯
回復 6# c_c_lai
這只是告訴你,只要在編號欄位使用公式=SUBTOTAL(3,$B$2:B2)
來完成編號後
執行篩選動作後(不管是手動或VBA操作)
編號都能自動重排顯示
如果要把編號的公式一併寫入VBA- Sub ex()
- With ActiveSheet
- If .[A1] <> "" Then '判斷是否已存在編號欄位
- .Columns("A").Insert '插入A欄
- End If
- If .FilterMode Then .ShowAllData '判斷是否篩選狀態
- .[A2] = "編號" '寫入欄名
- .[A3].FormulaR1C1 = "=SUBTOTAL(3,R2C[1]:R[-1]C[1])" '編號公式
- .[A3].AutoFill .Range(.[A3], .[B65536].End(xlUp).Offset(, -1)) '向下填滿
- .[K2] = "=SECOND(B3)=0" '篩選準則公式
- .Range("A1").CurrentRegion.Offset(1).AdvancedFilter xlFilterInPlace, .[K1:K2] '原地進階篩選
- End With
- End Sub
複製代碼 |
|