ActiveSheet.Range 可以設定 多個先後得篩顯排序嗎?
- 帖子
- 78
- 主題
- 30
- 精華
- 0
- 積分
- 109
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- XP
- 閱讀權限
- 20
- 註冊時間
- 2014-5-15
- 最後登錄
- 2018-9-16

|
本帖最後由 GBKEE 於 2015-5-8 08:59 編輯
大大 我遇到一個問題
如果說篩選出來的資料 沒半比資料 巨集會出現錯誤
停留在 ActiveSheet.Paste 跟你說錯誤 那該怎麼修改呢
謝謝
Sub 巨集9()
'
' 巨集9 巨集
'
Dim row_s1 As Integer
'檢查工作表1的B欄已有資料行數
row_s1 = Worksheets("紀錄-周同軸跌").Range("B65535").End(xlUp).Row
'B1無資料時,row_s1 =0
If row_s1 = 1 Then
If Cells(row_s1, 2) = "" Then
row_s1 = 0
End If
End If
Sheets("集合").Select
' ActiveSheet.Range("$A$1:GZ$55586").AutoFilter Field:=2, Criteria1:= _
' xlFilterToday, Operator:=xlFilterDynamic
ActiveSheet.Range("$A$1:GZ$100000").AutoFilter Field:=18, Criteria1:="<=0"
ActiveSheet.Range("$A$1:GZ$100000").AutoFilter Field:=20, Criteria1:=">=1000"
ActiveSheet.Range("$A$1:GZ$100000").AutoFilter Field:=25, Criteria1:="<=0"
ActiveSheet.Range("$A$1:GZ$100000").AutoFilter Field:=26, Criteria1:="<=-2"
ActiveSheet.Range("$A$1:GZ$100000").AutoFilter Field:=15, Criteria1:="<=0"
ActiveSheet.Range("$A$1:GZ$100000").AutoFilter Field:=7, Criteria1:="<=0"
ActiveSheet.Range("$A$1:GZ$100000").AutoFilter Field:=6, Criteria1:="<=0"
ActiveSheet.Range("$A$1:GZ$100000").AutoFilter Field:=29, Criteria1:=">=50"
ActiveSheet.Range("$A$1:GZ$100000").AutoFilter Field:=30, Criteria1:=">=50"
Range("a2:gz2").Select '第二欄a2~gz2
Range(Selection, Selection.End(xlDown)).Select '選擇到最後一欄
Selection.Copy
Worksheets("紀錄-adxr跌").Select
Cells(row_s1 + 1, 2).Select
ActiveSheet.Paste
Sheets("集合").Select
ActiveSheet.ShowAllData
End Sub |
|
|
|
|
|
|
|
- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
12#
發表於 2015-5-8 09:00
| 只看該作者
回復 11# vavashop
試試看- Option Explicit
- Sub 巨集9()
- Dim row_s1 As Integer
- '檢查工作表1的B欄已有資料行數
- With Worksheets("紀錄-周同軸跌")
- row_s1 = .Range("B65535").End(xlUp).Row
- 'B1無資料時,row_s1 =0
- If row_s1 = 1 Then
- If .Cells(row_s1, 2) = "" Then
- row_s1 = 0
- End If
- End If
- End With
- With Sheets("集合")
- ' ActiveSheet.Range("$A$1GZ$55586").AutoFilter Field:=2, Criteria1:= _
- ' xlFilterToday, Operator:=xlFilterDynamic
- With .Range("A1:GZ100000")
- .AutoFilter Field:=18, Criteria1:="<=0"
- .AutoFilter Field:=20, Criteria1:=">=1000"
- .AutoFilter Field:=25, Criteria1:="<=0"
- .AutoFilter Field:=26, Criteria1:="<=-2"
- .AutoFilter Field:=15, Criteria1:="<=0"
- .AutoFilter Field:=7, Criteria1:="<=0"
- .AutoFilter Field:=6, Criteria1:="<=0"
- .AutoFilter Field:=29, Criteria1:=">=50"
- .AutoFilter Field:=30, Criteria1:=">=50"
- End With
- 'Range("a2:gz2").Select '第二欄a2~gz2
- .Range(.Range("a2:gz2"), .Range("a2:gz2").End(xlDown)).Copy Worksheets("紀錄-adxr跌").Cells(row_s1 + 1, 2)
- '選擇到最後一欄
- '.Selection.Copy
- 'Worksheets("紀錄-adxr跌").Select
- 'Worksheets("紀錄-adxr跌").Cells(row_s1 + 1, 1).Select
- 'ActiveSheet.Paste
- .Select
- .ShowAllData
- End With
- End Sub
複製代碼 |
|
|
|
|
|
|
|