作者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