exl如何根据条件隐藏单元格?

如图假如N2是1隐藏12-23行N2是1.5或2隐藏15-23行N2是2.5或3隐藏18-23行N2是3.5或4隐藏21-23N2是5表格没变化我要的是整行消失而不是文字... 如图假如N2是1隐藏12-23行N2是1.5或2隐藏15-23行N2是2.5或3隐藏18-23行N2是3.5或4隐藏21-23N2是5 表格没变化我要的是整行消失 而不是文字消失 行还在求各路大神帮个忙 谢谢谢谢!! 展开
 我来答
boyayes
2022-08-04 · TA获得超过4516个赞
知道大有可为答主
回答量:4231
采纳率:75%
帮助的人:1027万
展开全部

你这个问题啊,建议用VBA吧。

如果你的工作簿格式是.xls或.xlsx格式,必须另存为 启用宏的工作簿.xlsm格式。

另外,在打开.xlsm格式的工作簿时,如果提示你启用宏,必须点击启用。

方法:

第一步:按Alt+F11打开VBA编辑器。

第二步:在左侧双击要编程的工作表。

第三步:在右侧输入或粘贴下边这段程序。

然后关闭VBA编辑器即可。

Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Address(0, 0) = "N2" Then 'N2的值发生变更时

'根据不同值,指定不同行号

        Dim Str$

        Select Case Target.Value

        Case 1

            Str = "12:23"

        Case 1.5, 2

            Str = "15:23"

        Case 2.5, 3

            Str = "18:23"

        Case 3.5, 4

            Str = "21:23"

        End Select

        '隐藏指定的行号

        If Str <> "" Then

            Rows("1:" & Rows.Count).Hidden = False '显示全表所有行

            Rows(Str).Hidden = True '隐藏指定的行号

        End If

    End If

End Sub

更多追问追答
追问
你好
非常高兴能看到你的解答
我也实验了一下 但是输出4.5,5时
整个表格21-23不显示了 怎么办
再帮下忙我提下悬赏 谢谢啦
还有一个问题假如我N2位置发生改变
我在VBS里修改N2相应的位置就可以了啊
追答

你说的对呀,只要修改第2行的双引号中的N2即可。

另外关于你说的不显示的问题,如图,把我标红的这句,从底部移到顶部这里,即可。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式