- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在尝试将过滤后的列复制到数组中以填充 Powerpoint 演示文稿中的 ComboBox。
我用来执行此操作的代码行是:
ar = tbl.ListColumns(ColNumber).Range.SpecialCells(12).Value
其中“ar”是目标数组,“tbl”是源表,“ColNumber”是我要复制的列数。
最佳答案
由于非连续范围,您正面临该问题。你 不能使用方法Array = Range.Value
对于非连续范围。有两种方法可以实现你想要的。
方式 1 确定范围,循环遍历单元格并填充数组。适合您的情况,因为您正在处理单列。
Option Explicit
Sub Sample()
Dim ws As Worksheet
Dim tbl As ListObject
Dim ar As Variant
Dim i As Long, n As Long, ColNumber As Long
Dim aCell As Range, rng As Range
'~~> Change this to the relevant sheet
Set ws = Sheet1
'~~> Change this to the relevant table
Set tbl = ws.ListObjects("Table1")
ws.AutoFilterMode = False
'~~> Change to relevant column number
ColNumber = 1
'~~> Autofilter as required
tbl.Range.AutoFilter Field:=ColNumber, Criteria1:="Blah1"
'~~> Set your range
Set rng = tbl.ListColumns(ColNumber).Range.SpecialCells(12)
'~~> Get the count of cells in that range
n = rng.Cells.Count
'~~> Resize the array to hold the data
ReDim ar(1 To n)
n = 1
'~~> Store the values from that range into the array
For Each aCell In rng.Cells
ar(n) = aCell.Value
n = n + 1
Next aCell
For i = LBound(ar) To UBound(ar)
Debug.Print ar(i)
Next i
End Sub
方式 2 确定范围,遍历
Area然后遍历
Area
中的单元格然后填充数组。与上面的代码非常相似。
关于excel - SpecialCells(12).Value 在第一个隐藏行后停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62656055/
我真的很困惑和好奇,为什么相同的编码,只是数据量不同,输出会完全不同? With Sheets("control deck").Range("A2:A5000").SpecialCells(xlCel
我构建了一个脚本来创建发送给不同人的电子邮件,其中包含单独的附件。我有从这个母脚本调用的不同子例程。 在调用子程序 Distribution 之前它一直有效。它停在 For Each cell In
基于 on another question在这个网站上,我开始想知道删除具有特定条件的所有行的最快方法。 上面提到的问题有各种解决方案: (1)循环遍历工作表上的所有行(向后),将所有满足条件的行一
这又是一个奇怪的事情。 我有这段代码,它使用过滤器从一张工作表中获取数据,并使用 Range.SpecialCells() 方法来查找要复制和粘贴的适当行。但是,如果我使用 Rows().Specia
我知道我可以通过迭代第一个范围来完成此任务,但我很好奇是否可以使用 SpecialCells 属性来完成此任务。 假设我有一列名称,中间有空单元格: A B C Jon Jim Sal
背景: 我已经申请过很多次AutoFilter从来没有真正问过自己为什么有时会这样。使用过滤数据的结果有时可能会令人困惑,特别是当 SpecialCells 发挥作用时。 让我详细说明以下场景: 测试
我目前正在尝试将过滤后的列复制到数组中以填充 Powerpoint 演示文稿中的 ComboBox。 我用来执行此操作的代码行是: ar = tbl.ListColumns(ColNumber).Ra
Excel SpecialCells(xlCellTypeBlank) 包括合并区域中的所有单元格,无论它们是否为空白。我认为这是一个错误,我迫切需要一个解决方法。复制步骤: (1) 创建一个工作表,
当使用Range.SpecialCells时如果范围不包含与条件匹配的单元格,则会抛出错误,指出未找到单元格。 此问题最常见的解决方案是让它发生并使用错误处理程序来处理它。 这是解决该问题的最有名的方
我在 Excel 2010 中有一个工作表,它被设置为伪表单(我没有创建它,我只是想修复它),因此格式设置表明用户只能在某些单元格中输入。根据某些功能,这些区域需要重置,即清除,但需要保留公式和标准/
使用 Selection.SpecialCells(xlCellTypeVisible).Count 时要计算单列过滤数据,它适用于多行结果。但是当只显示 1 行时,它会给我一个溢出错误或者我得到 c
当我选择一个包含三个单元格的范围时,例如 B3:B5,该方法按预期运行,并显示三个带有“3”、“4”和“5”的消息。 Sub visTest() Dim c As Range For
恐怕我误解了 VBA for excel 的文档,我有这行似乎是一个错误: Range a = Selection.SpecialCells(xlCellTypeConstants, 23) 但这一个
我正在尝试删除 B 列中包含空白的任何内容。 A1:A10 = {3,1,10,1,1,10,2,2,2,10}。当我运行我的代码时,我在删除行行出现错误。这是“运行时 1004 错误,未找到单元格”
Range.SpecialCells method可用于返回满足特定条件的 Range 对象。标准的类型是使用 xlCellType 常量指定的。 其中一个常量 (xlCellTypeBlanks)
我编写了一个宏,使用 Excel 范围对象的 SpecialCells 方法从某个范围中查找空白单元格。当我尝试执行以下代码时,出现“未找到单元格”的异常。 Sub test() Debug.Prin
我有一个 Excel VBA 宏,每周运行一次。我有一段代码可以过滤出不同的数据,然后将剩余的单元格复制到不同的工作表中 以下是受影响的代码部分: dim data as worksheet dim
我正在尝试自动化一份包含 5 个不同信息源的报告。我尝试使用 ListObjects 将不同表的 UNION 合并为一个表,除了复制第一个 ListObject 的第一列时,一切都工作正常。复制第一列
基于question由 @Chips Ahoy 提出,我决定创建一个 UDF 来查找某个范围内可见单元格的 PercentRank。 虽然 @Chips 似乎对我的语法修正感到满意,但实际上我无法让我
我有一段 Excel VBA 代码,如果工作表未 protected 则可以正常工作,但在 protected 时则不能。我已经阅读了之前的类似查询,但认为它们不适用于这种情况 - 建议的修复不适用或
我是一名优秀的程序员,十分优秀!