作者ptty (ptty)
看板Office
標題[問題] 如何合併兩個巨集
時間Wed Sep 19 10:03:47 2018
軟體: Excel 2016
1.如何把下面這兩個巨集放在一起? "巨集1"跑完跑"巨集2"
2.巨集2要如何才能讓他不鎖試算表名稱,不鎖範圍? 因為範圍不一定一樣, 只是想接著巨
集1後面做巨集2的排序而已, 其實是同一個試算表, 不曉得如何不鎖範圍的接上去? 因為
每次撈出來的資料不一定一樣多,鎖範圍就沒辦法每次都用同一個巨集了。
求解,謝謝大家。
Sub 巨集1()
'
'巨集1 巨集?
'
? Columns("A:A").Select
? Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
? Range("A1").Select
? ActiveCell.FormulaR1C1 = "Remark"
? Cells.Select
? Selection.RowHeight = 16.5
? Rows("1:1").Select
? Selection.AutoFilter
? Range("A2").Select
? ActiveWindow.FreezePanes = True
?
End Sub
?
Sub 巨集2()
'
'巨集2 巨集?
'
?
'
? Cells.Select
? ActiveWorkbook.Worksheets("試算表名稱").Sort.SortFields.Clear
? ActiveWorkbook.Worksheets("試算表名稱").Sort.SortFields.Add Key:=Range("
J2
:J50"), _
? SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNo
rmal
? ActiveWorkbook.Worksheets("試算表名稱").Sort.SortFields.Add Key:=Range("
B2
:B50"), _
? SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNo
rmal
? With ActiveWorkbook.Worksheets("試算表名稱").Sort
? .SetRange Range("A1:AW50")
? .Header = xlYes
? .MatchCase = False
? .Orientation = xlTopToBottom
? .SortMethod = xlPinYin
? .Apply
? End With
? Range("A2").Select
?
End Sub
※ 編輯: ptty (42.73.116.28), 09/19/2018 10:08:25
1F:→ soyoso: 原文出現無法理解的辭彙(亂碼) 09/19 10:08
2F:→ ptty: s大謝謝回覆,我剛剛改好了 09/19 10:10
3F:→ soyoso: 放在一起,1跑完後跑2方面,1.將巨集2的巨集碼複製貼於巨 09/19 10:16
4F:→ soyoso: 集1巨集碼下方就activewindows.freezepanes..end sub的中 09/19 10:16
5F:→ soyoso: 間。如要分成二個sub(程序)的話,就於activewindows.freez 09/19 10:17
6F:→ soyoso: epanes...下方打上 巨集2 或 call 巨集2 09/19 10:18
7F:→ soyoso: 不鎖試算表名稱的話,如果執行巨集方面就在作用工作表內的 09/19 10:20
8F:→ soyoso: 話,可改以activesheeet 09/19 10:21
9F:→ soyoso: 不鎖範圍,資料不一定一樣多而要取得最後一筆有資料的儲存 09/19 10:22
10F:→ soyoso: 格的話,range.end、range.find;取列號的話可加上row 09/19 10:23
11F:→ soyoso: 範圍內連續有值的話也可以工作表函數counta或count來協助 09/19 10:25
12F:→ ptty: 謝謝s大 09/19 17:26