Excel中VBA进行插入列、格式化、排序

在数据分析中经常需要对数据进行排序、排名,观察指标排名变化情况,手工处理的话不是太困难,但经常使用,还是编写宏比较方便。

宏命令比较简单,不多解释,只说一下注意事项:

1、有合并单元格,比如列、行合并后,直接选择会全选合并的列/行,这时候,不用管选择,直接进行插入、删除、或者格式化就可

Columns(nCol).Insert

2、输入格式化公式时,需要固定单元格$,可以使用FormulaR1C1,R[1]C[1]标示当前行、列加1,R1C1标示$a$1,使用时还要注意

把数字转换成字符串。

Sub 排序()
'
' 排序 宏
' 123
'
' 快捷键: Ctrl+p
    Dim nCol As Long
    Dim nRow As Long
   
    nCol = Selection.Column
    nRow = Selection.Row

    Columns(nCol).Insert
   
    Columns(nCol).NumberFormatLocal = "G/通用格式"
 
    Cells(nRow, nCol).Select

    ActiveCell.FormulaR1C1 = "=RANK(RC[-1],R" & CStr(nRow) & "C[-1]:R" & CStr(nRow + 16) & "C[-1])"
   
    Selection.AutoFill Destination:=Range(Cells(nRow, nCol), Cells(nRow + 16, nCol)), Type:=xlFillDefault
End Sub

转载于:https://www.cnblogs.com/iHqq/p/5703630.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值