EXCEL在改动某几个单元格时隐藏空列

Posted yangzhou33

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EXCEL在改动某几个单元格时隐藏空列相关的知识,希望对你有一定的参考价值。

概述

今天我哥来找我帮他搞下excel表格,本着程序猿对程序无所不能的精神,我爽快的答应了。结果查了半天才搞定。现在记录在此,供自己以后参考,相信对其他人也有用。

PS:这几天正在弄博客,马上就要弄完啦,弄完就把这些手记搬到博客上面啦!

说明

EXCEL的条件格式不能改变单元格的高宽,不能删掉单元格,不能隐藏单元格。

要实现这些功能需要用VBA编写宏,其中用到了EXCEL的Change事件。

EXCEL的Change事件是当改变单元格时自动运行的,不需要绑定按钮。

用法

右键点击工作表的标签,然后点击“查看代码”,然后分别选择“Worksheet”和“Change”,如下图。最后贴入代码即可。
技术分享图片
技术分享图片

代码

以下代码将更改的单元格的颜色设为蓝色。

Private Sub Worksheet_Change(ByVal Target as Range) 
    Target.Font.ColorIndex = 5 
End Sub

以下代码将在改动EXCEL的C1单元格和G1单元格时,隐藏D4到AH4列之间的空列

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim abc As String
    Dim rng As Range
    abc = Target.Address
    If abc = "$C$1" Or abc = "$G$1" Then
        For Each rng In [D4:AH4]
            If rng.Value = "" Then
                rng.EntireColumn.Hidden = True
            Else
                rng.EntireColumn.Hidden = False
            End If
        Next
    End If
End Sub

注意:Private Sub Worksheet_Change(ByVal Target As Range)这一行不能改动;其中Target 就表示你改动的单元格。

以上是关于EXCEL在改动某几个单元格时隐藏空列的主要内容,如果未能解决你的问题,请参考以下文章

excel中怎么选中某几个单元格所在的整行?

如何用IF函数判断一个单元格内的文本中包含某几个字

Excel表格中在一个文本单元格前边加几个字母应该怎么做?

在excel中如何隐藏某个单元格的内容

当鼠标点到excel单元格时,单元格所在的行和列会自动显示颜色

Excel选中单元格时自动高亮所在行列