ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: ctp_119

自己做的一个聚光灯。

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2015-7-16 13:50 | 显示全部楼层
本帖已被收录到知识树中,索引项:其他插件和工具
向大神學習,向大神致敬!!

TA的精华主题

TA的得分主题

发表于 2015-8-6 11:46 | 显示全部楼层
win7  64位  07版亲测   打开后不能复制粘贴.   请楼主改进  

TA的精华主题

TA的得分主题

发表于 2015-8-6 14:39 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2015-8-7 22:52 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
易用宝不是有呢我

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-8 09:27 | 显示全部楼层
may31110 发表于 2015-8-6 14:39
谢谢!可是不知道干什么用!

对账时,防止看花眼的!!!对错行或列的!!!仅此而已!!!

TA的精华主题

TA的得分主题

发表于 2015-8-10 15:36 | 显示全部楼层
我的聚光灯,代码贡献
功能:可以选择行、列、十字、删除。
不影响复制等操作,支持64位OFFICE

Sub ALTJ() '菜单栏
    Dim BarS As CommandBar
    Dim ButA As CommandBarButton
    Dim Shelp, Fhelp, PicS, PicF, Naction
    Dim i As Integer
   
    Shelp = Array("删除亮显", "行列亮显", "列亮显", "行亮显", "自动换行", "回车下移") '标题
    PicS = Array("PIC_D", "PIC_CR", "PIC_C", "PIC_R", "H_H", "H_C") '图片
    Naction = Array("DEl_code", "add_code_RC", "add_code_C", "add_code_R", "zdhh", "hcXX") '程序
   
    Set BarS = Application.CommandBars("standard")
    For i = 1 To 6
        Set ButA = BarS.Controls.Add(Type:=msoControlButton, Before:=10, temporary:=True)
        函数表.Shapes(PicS(i - 1)).Copy
        With ButA
            .Caption = Shelp(i - 1)
            .OnAction = Naction(i - 1)
            .PasteFace
        End With
    Next
   End Sub

'代码插入
Sub Add_Code(TypeM As Integer, Control As IRibbonControl)
   
    Dim StarlineN As Long, R As Integer, i As Long
    Dim DmA As String, DmB As String
    Dim Bzf As Boolean
   
    On Error Resume Next
   
    [ChangColor_Row].FormatConditions.Delete
    [ChangColor_Col].FormatConditions.Delete
    [SeleCtion_Cell].FormatConditions.Delete
   
    DmA = "application.run " & """" & "I_Code" & """" & "," & TypeM & "'[YVCBIWKH200505]"
    DmB = "Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)" & vbCrLf _
            & DmA & vbCrLf _
            & "End Sub"
   
    With ActiveWorkbook.VBProject.VBComponents(ThisWorkbook.CodeName).CodeModule
        StarlineN = .ProcStartLine("Workbook_SheetSelectionChange", vbext_pk_Proc)
        If StarlineN = 0 Then '程序不存在时,添加
            .AddFromString DmB
        Else
            For i = StarlineN To .CountOfLines
                Bzf = .Find("[YVCBIWKH200505]", StarlineN, 0, i, 0, False, True, True)
                If Bzf Then
                    Exit For
                End If
            Next
            If Bzf Then
                .ReplaceLine i, DmA
            Else
                .InsertLines .ProcStartLine("Workbook_SheetSelectionChange", vbext_pk_Proc) + 1, DmA
            End If
        End If
    End With
   
End Sub

'行亮显
Sub Add_Code_R(Control As IRibbonControl)
    Add_Code 1, Control
End Sub

'列亮显
Sub Add_Code_C(Control As IRibbonControl)
    Add_Code 2, Control
End Sub

'行列亮显
Sub Add_Code_RC(Control As IRibbonControl)
    Add_Code 3, Control
End Sub

'执行模块
Sub I_Code(i As Integer)

    Dim BzA As Boolean, BzB As Boolean
   
    On Error Resume Next
   
    [ChangColor_Row].FormatConditions.Delete
    [ChangColor_Col].FormatConditions.Delete
    [SeleCtion_Cell].FormatConditions.Delete
   
    Selection.Name = "Selection_Cell"
    Selection.EntireRow.Name = "ChangColor_Row"
    Selection.EntireColumn.Name = "ChangColor_Col"
   
    BzA = Abs(i - 2)
    BzB = Abs(i - 1)
   
    If BzA Then '行
        With [ChangColor_Row].FormatConditions
            .Delete
            .Add xlExpression, , "TRUE"
            .Item(1).Interior.ColorIndex = 24
        End With
    End If
        
    If BzB Then '列
        With [ChangColor_Col].FormatConditions
            .Delete
            .Add xlExpression, , "TRUE"
            .Item(1).Interior.ColorIndex = 24
        End With
    End If
   
    '单元格
    With [SeleCtion_Cell].FormatConditions
        .Delete
        .Add xlExpression, , "TRUE"
        .Item(1).Interior.ColorIndex = 7
        .Item(1).Font.ColorIndex = 2
    End With
   
End Sub

'删除亮显
Sub Del_Code(Control As IRibbonControl)

    Dim StarlineN As Long, R As Integer, i As Long, DmA As String, Bzf As Boolean
   
    On Error Resume Next
   
    With ActiveWorkbook.VBProject.VBComponents(ThisWorkbook.CodeName).CodeModule
        StarlineN = .ProcStartLine("Workbook_SheetSelectionChange", vbext_pk_Proc)
       ' MsgBox StarlineN
        For i = StarlineN To .CountOfLines
            Bzf = .Find("[YVCBIWKH200505]", StarlineN, 0, i, 0, False, True, True)
            If Bzf Then Exit For
        Next
        If Bzf Then
            .DeleteLines i, 1
        Else
            MsgBox "没有发现代码"
        End If
    End With
   
    [ChangColor_Row].FormatConditions.Delete
    [ChangColor_Col].FormatConditions.Delete
    [SeleCtion_Cell].FormatConditions.Delete
    ActiveWorkbook.Names("ChangColor_Row").Delete
    ActiveWorkbook.Names("ChangColor_Col").Delete
    ActiveWorkbook.Names("Selection_Cell").Delete
   
End Sub

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-11 09:58 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
Laolangsex 发表于 2015-8-10 15:36
我的聚光灯,代码贡献
功能:可以选择行、列、十字、删除。
不影响复制等操作,支持64位OFFICE

最好把附件也上传上来,大家可以互相学习!!!

TA的精华主题

TA的得分主题

发表于 2015-8-11 10:02 | 显示全部楼层
ctp_119 发表于 2015-8-8 09:27
对账时,防止看花眼的!!!对错行或列的!!!仅此而已!!!

哦,谢谢!普及姿势!

TA的精华主题

TA的得分主题

发表于 2015-8-14 10:37 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2015-8-14 13:48 | 显示全部楼层
ctp_119 发表于 2015-8-8 09:27
对账时,防止看花眼的!!!对错行或列的!!!仅此而已!!!

win7  64位  07版亲测   打开后不能复制粘贴.   请楼主改进      8月6号发的,没看见啊?
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-19 08:24 , Processed in 0.037636 second(s), 6 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表