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

|
ActiveSheet.Range 可以設定 多個先後得篩顯排序嗎?
大大請教一個問題
排序篩選可以設定 先後順序嗎?
ActiveSheet.Range("$A$1:$GZ$5000").AutoFilter Field:=7, Criteria1:="3"
ActiveSheet.Range("$A$1:$GZ$5000").AutoFilter Field:=6, Criteria1:="3" |
|
|
|
|
|
|
- 帖子
- 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
複製代碼 |
|
|
|
|
|
|
- 帖子
- 78
- 主題
- 30
- 精華
- 0
- 積分
- 109
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- XP
- 閱讀權限
- 20
- 註冊時間
- 2014-5-15
- 最後登錄
- 2018-9-16

|
11#
發表於 2015-5-8 02:00
| 只看該作者
本帖最後由 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
        
|
10#
發表於 2015-5-7 14:40
| 只看該作者
回復 6# vavashop
我是不是因為下面這一段所以變成越來越大
Range("a2:gz100000").Select
Selection.Copy
試試看 只Copy有資料的儲存格- Sheets("指定的工作表").UsedRange.Columns("a:gz").Offset(1).Copy
複製代碼 |
|
|
|
|
|
|
- 帖子
- 78
- 主題
- 30
- 精華
- 0
- 積分
- 109
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- XP
- 閱讀權限
- 20
- 註冊時間
- 2014-5-15
- 最後登錄
- 2018-9-16

|
9#
發表於 2015-5-6 13:23
| 只看該作者
大大
請問這一段 如何改
Sub 巨集2()
'
' 巨集2 巨集
'
'
Dim row_s1 As Integer
'檢查工作表1的B欄已有資料行數
row_s1 = Worksheets(1).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
Call a2
Call a1
Range("B2:l9").Select
Selection.Copy
Worksheets(1).Select
Cells(row_s1 + 1, 2).Select
ActiveSheet.Paste
我想改成 抓出篩選後的資料
Range("B2:l9").Select
i9 資料最後不一定是在這一列
不知道大大可以指點一下嗎? |
|
|
|
|
|
|
- 帖子
- 78
- 主題
- 30
- 精華
- 0
- 積分
- 109
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- XP
- 閱讀權限
- 20
- 註冊時間
- 2014-5-15
- 最後登錄
- 2018-9-16

|
7#
發表於 2015-5-6 00:52
| 只看該作者
另外 大大們~我b欄位都有資料
所以可以用這一欄 來篩選空白格 |
|
|
|
|
|
|
- 帖子
- 78
- 主題
- 30
- 精華
- 0
- 積分
- 109
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- XP
- 閱讀權限
- 20
- 註冊時間
- 2014-5-15
- 最後登錄
- 2018-9-16

|
6#
發表於 2015-5-6 00:50
| 只看該作者
嗯嗯~
大大我有一個疑問~
我的vba跑完變成200多mb
我想抓篩選出來的資料然後貼上 其他工作表
不知道
我是不是因為下面這一段所以變成越來越大
Range("a2:gz100000").Select
Selection.Copy
因為資料沒有那麼多 我只需要a2~gz欄位
然後選擇篩選出來的資料複製起來 貼向另一個工作表
第二個問題是現在我很多工作表 "列"都是空白的但號碼都到十萬了
不知道誰可以救我
欄位也可以邦我刪除到a~gz留下來即可嗎?
請各位大大幫忙了
感覺會爆炸的excel |
|
|
|
|
|
|
- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
5#
發表於 2015-5-3 08:08
| 只看該作者
回復 4# vavashop
是這樣嗎?- Sub Ex()
- With ActiveSheet.Range("$A$1:$GZ$5000")
- .AutoFilter Field:=7, Criteria1:="3"
- .AutoFilter Field:=6, Criteria1:="3"
- '排序篩選可以設定 先後順序嗎?
- '是這樣嗎!!
- .Columns(1).Sort KEY1:=.Cells(1), Order1:=xlAscending, Header:=xlYes
- .Columns(2).Sort KEY1:=.Cells(2), Order1:=xlAscending, Header:=xlYes
- .Columns(3).Sort KEY1:=.Cells(3), Order1:=xlAscending, Header:=xlYes
- End With
- End Sub
複製代碼 |
|
|
|
|
|
|
- 帖子
- 78
- 主題
- 30
- 精華
- 0
- 積分
- 109
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- XP
- 閱讀權限
- 20
- 註冊時間
- 2014-5-15
- 最後登錄
- 2018-9-16

|
4#
發表於 2015-4-30 16:51
| 只看該作者
|
|
|
|
|
|