【问题标题】:Hide columns in excel based on drop down list selection根据下拉列表选择隐藏excel中的列
【发布时间】:2012-12-12 13:33:39
【问题描述】:

我想知道是否可以根据使用 excel 选择的下拉列表来隐藏列。 例如,假设我有 3 列(C1、C2、C3),并且我有一个包含 2 个值(drop1 和 drop2)的下拉列表。从下拉列表中选择 drop1 时,显示 C1、C2 并隐藏 C3。选择 drop2 时,显示所有列 C1,C2,C3 。有谁知道这在excel中是否可行?

【问题讨论】:

  • 问这样一个宽泛的问题通常也会给你一个宽泛的答案...我已经尽力在我的回答中尽可能地窄。

标签: excel show-hide


【解决方案1】:

Here's an example 通过 VBA 隐藏列。您需要编写类似这样的代码。

请注意,我假设当您说“excel”时,您实际上是指在 excel 应用程序中。如果您以编程方式生成 Excel 文件,则可以通过 OpenXML API 轻松使用类似的代码。

【讨论】:

  • 不,我只是在使用 excel 文档,我有一些编程知识,但我之前从未真正用 excel 做过任何 VBA
  • 在这种情况下,答案是否定的。您必须以编程方式执行某些操作才能使其正常工作。但是,通过使用“开发人员”选项卡下的“录制宏”按钮,您将得到 Microsoft 的大力协助!
  • 使用 VBA 使其工作。代码如下: Private Sub Worksheet_Change(ByVal Target As Range) Dim CustName As String CustName = Worksheets("Customer Timesheet").Range("F7").Value If CustName = "Customer 1" Then Worksheets("Customer Timesheet").Columns("H").Hidden = False Else Worksheets("Customer Timesheet").Columns("H").Hidden = True End If End Sub
【解决方案2】:

是的,这是可能的(非常简短的回答)。

使用 VBA 在这种情况下,您必须将下拉值链接到任何一个单元格(并使用 Worksheet_Change 来查看特定单元格是否已获取隐藏列所需的值(在这种情况下应该隐藏)被撤消)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-25
    • 2011-10-23
    • 2023-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-29
    • 2014-10-11
    相关资源
    最近更新 更多