返回列表 上一主題 發帖

請問如何篩選每分鐘術據

回復 4# c_c_lai


    play.gif
學海無涯_不恥下問

TOP

本帖最後由 Hsieh 於 2012-7-28 19:41 編輯

回復 6# c_c_lai
這只是告訴你,只要在編號欄位使用公式=SUBTOTAL(3,$B$2:B2)
來完成編號後
執行篩選動作後(不管是手動或VBA操作)
編號都能自動重排顯示
如果要把編號的公式一併寫入VBA
  1. Sub ex()
  2. With ActiveSheet
  3. If .[A1] <> "" Then  '判斷是否已存在編號欄位
  4. .Columns("A").Insert  '插入A欄
  5. End If
  6. If .FilterMode Then .ShowAllData  '判斷是否篩選狀態
  7. .[A2] = "編號"  '寫入欄名
  8. .[A3].FormulaR1C1 = "=SUBTOTAL(3,R2C[1]:R[-1]C[1])"  '編號公式
  9. .[A3].AutoFill .Range(.[A3], .[B65536].End(xlUp).Offset(, -1))  '向下填滿
  10. .[K2] = "=SECOND(B3)=0"   '篩選準則公式
  11. .Range("A1").CurrentRegion.Offset(1).AdvancedFilter xlFilterInPlace, .[K1:K2]  '原地進階篩選
  12. End With
  13. End Sub
複製代碼
學海無涯_不恥下問

TOP

本帖最後由 Hsieh 於 2012-7-30 08:40 編輯

回復 8# c_c_lai
原地篩選不會改變位置
只是將不符合條件的資料列隱藏
所以,工作表的列標籤無法改變
也就是說篩選並不會讓資料重排
資料重排必須使用排序
play.gif
學海無涯_不恥下問

TOP

        靜思自在 : 地上種了菜,就不易長草;心中有善,就不易生惡。
返回列表 上一主題