gpt4 book ai didi

excel - 通过 Excel VBA 按钮隐藏包含具有特定值的单元格的列

转载 作者:行者123 更新时间:2023-12-04 21:01:26 25 4
gpt4 key购买 nike

我有一个电子表格,其中包含与 2015 年至 2020 年周一至周六日期相关的列。当我打印这张表时,我只想看到“星期一”栏,而不是星期二至星期六。第 14 行包含日期 (dd/mm),第 15 行包含星期几(例如,“M”代表星期一,“T”代表星期二,等等)。我希望能够在隐藏所有非星期一列和查看所有列之间切换。下面的 VBA 按钮代码给了我“运行时错误 '13' - 类型不匹配”。这个按钮有一个简单的修复方法,还是有更好的方法来完成这个?

Private Sub CommandButton1_Click()
Dim i As Long
For i = 11 To 222
If Cells(14, i).Value = "T" Or "W" Or "R" Or "F" Or "S" Then
Columns(i).EntireColumn.Hidden = True
Else
Columns(i).EntireColumn.Hidden = False
End If
Next i
End Sub

最佳答案

您的代码很接近,但是 IF ... OR ... OR语法关闭。您的 OR条件是独立的,它们必须包含计算结果为 True 的表达式或 False .

因此,它应该改为:

If Cells(14, i).Value = "T" Or Cells(14, i).Value = "W" Or Cells(14, i).Value = "R" Or Cells(14, i).Value = "F" Or Cells(14, i).Value = "S" Then

诚然,这要麻烦得多,但它应该可以解决问题。

由于您要查找的值是单个字符,因此您可以在这里作弊并使用 INSTR() :
If Instr(1, "TWRFS", Cells(14,i).value) > 0 Then

因此,如果您的单元格的值是在那一串工作日字母中,那么......做任何事情

关于excel - 通过 Excel VBA 按钮隐藏包含具有特定值的单元格的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35586211/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com