Excel如何实现按一下快捷键: Ctrl+a,宏的代码就自动递增

Sub 宏1()
'
' 宏1 宏
'
' 快捷键: Ctrl+a
'
Range("H46:AC46").Select
Selection.AutoFill Destination:=Range("H46:AC47"), Type:=xlFillDefault
Range("H46:AC47").Select
End Sub
以上是录制宏的代码。

如何实现:按一下快捷键: Ctrl+a,将下面宏的代码:
Range("H46:AC46").Select
Selection.AutoFill Destination:=Range("H46:AC47"), Type:=xlFillDefault
Range("H46:AC47").Select
就自动递增为:
Range("H47:AC47").Select
Selection.AutoFill Destination:=Range("H47:AC48"), Type:=xlFillDefault
Range("H47:AC48").Select

再按一下快捷键: Ctrl+a,将下面宏的代码:
Range("H47:AC47").Select
Selection.AutoFill Destination:=Range("H47:AC48"), Type:=xlFillDefault
Range("H47:AC48").Select
就再自动递增为:
Range("H48:AC48").Select
Selection.AutoFill Destination:=Range("H48:AC49"), Type:=xlFillDefault
Range("H48:AC49").Select

再按一下快捷键......以此类推。请问:如何修改宏的代码,才能实现自动递增?谢谢!

用这个, 自己也用了,绝对可行。

转:
http://zhidao.baidu.com/question/487893340.html

全部填充完是什么意思?是指填充到A列的最后一行同一行吗?

AutoFill Destination:=Range("B2:J"&range("A65536").end(xlup).row)提问者评价按照你说的,真的成功了,好开心,谢谢你!评论|1
fjmxwrs|来自团队Excel粉丝|十四级采纳率37%擅长:办公软件操作系统/系统故障
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-08-01
你可以在一个不使用的单元格中储存你的当前变量,每一次自动提取,等执行完后自动修改当前变量。
第2个回答  2011-08-01
唉,你这个问题已经提过的了, 宏代码通常来说是不可能改变的,你要将你的问题说清楚,究竟要做些什么,达到什么样的目的?追问

就是如何解决选择、下拉的递增问题,如上图宏的("H47:AC47")为选择、("H47:AC48")为下拉、("H47:AC48")为下拉到,如按一下宏快捷键: Ctrl+a后,就自动递增为:("H48:AC48")为选择、("H48:AC49")为下拉、("H48:AC49")为下拉到,如再按一下宏快捷键,就再自动递增,以此类推。说一句土话:不让宏重复昨天的故事,谢谢!

追答

vba代码不可能实现自己修改自己代码的啊

相似回答