在Excel 2013中使用VBA读取隐藏列的问题

杰弗瑞·多德(JeffreDodd)

我目前在宏中有问题,我正在为Excel 2013编写有关读取隐藏列的宏。我正在尝试将A列用作一行唯一键,以允许我快速开发基于A列中的键值隐藏和显示一行的逻辑。当出于视觉目的手动将A列隐藏在工作表中时,无法从该列读取内容,也就是我的代码返回错误。如果我显示该列,则代码将清晰执行。在此先感谢您的帮助!

Public Sub hideRow(findId As String, sheetName As String)
    Dim lastRow As Long
    Dim foundCell As Range
    Dim hideThisRowNum As Integer

    'Get Last Row
    lastRow = Worksheets(sheetName).Range("A" & Rows.Count).End(xlUp).Row

    'Find ID
    With Worksheets(sheetName).Range("a1:a1000") 'This needs to be A1 to AxlDown
        Set foundCell = Worksheets(sheetName).Range("A1:A" & lastRow).Find(What:=findId,     LookIn:=xlValues, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False)
    End With

    'Get Row # to Hide

    hideThisRowNum = Val(foundCell.Row)

    'Hide row
    Worksheets(sheetName).Rows(hideThisRowNum).Hidden = True

    'Set Add To Action Plan = No
    Worksheets(sheetName).Range("G" & hideThisRowNum).Value = "No"

End Sub

问题出在.Find()调用中。使用LookIn:=xlValues不会找到隐藏的单元格。将其更改为LookIn:=xlFormulas,它应该可以工作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在VBA Excel中的SQL查询中使用表名

来自分类Dev

Excel VBA:粘贴问题

来自分类Dev

使用VBA在Excel中反堆积列

来自分类Dev

使用VBA将.MDB文件中的表中的数据读取到Excel 2013中

来自分类Dev

在Excel 2010中隐藏MS VBA屏幕

来自分类Dev

使用Excel 2013隐藏行

来自分类Dev

VBA在Excel 2013中自动隐藏功能区

来自分类Dev

使用Excel VBA复制列中的范围

来自分类Dev

在VBA中的Excel中使用公式创建函数

来自分类Dev

在Excel VBA中使用COM加载项中的CLR类?

来自分类Dev

在Excel中使用LOOKUP的问题

来自分类Dev

Excel VBA .find问题

来自分类Dev

使用VBA在Excel中查看和隐藏列

来自分类Dev

Excel VBA列表问题

来自分类Dev

使用VBA For Loop连接Excel中的列

来自分类Dev

需要使用Excel 2013 VBA脚本

来自分类Dev

使用Excel 2013的PowerPoint 2013中的VBA Pulse动画

来自分类Dev

Excel VBA中的公式问题

来自分类Dev

使用VBA在Excel中从HTML读取表

来自分类Dev

在Excel VBA中使用“(全部)”

来自分类Dev

使用EPPLUS找出Excel文件中是否隐藏了列

来自分类Dev

在Excel中使用VBA更改PowerPoint中的SlideSize

来自分类Dev

在Excel中隐藏/取消隐藏列的宏

来自分类Dev

使用 VBA 比较 Excel 中的 3 列

来自分类Dev

Excel VBA 问题

来自分类Dev

使用列函数 - Excel VBA

来自分类Dev

使用poi读取excel公式的问题

来自分类Dev

在 VBA 中使用的 Excel 表格列的“代码名称”

来自分类Dev

如何通过 VBA 使用来自另一列的信息在 Excel 2013 中创建列?