我正在尝试通过宏自动格式化excel文件并寻求解决方案。
我有两列标题为姓氏和名字,我想将其连接到一个标题为姓氏,名字的单独列。
手动完成时这很简单:创建一个执行此操作的单元格,然后拖动该单元格以包含该范围内的所有单元格。尝试自动执行此操作时会出现此问题。因为我无法知道需要提前连接的名称数量,所以我无法通过拖动自动选择单元格。
你能帮我自动化吗?
我尝试过复制初始连接单元格,突出显示该列,然后粘贴的过程。我还尝试使用只有在“姓氏”和“名字”列中有文本时才返回连接的公式。但是,在这两种情况下,我最终都会产生大约100,000行,严重影响了我操作工作表的能力。
我能想到的最佳解决方案是在固定范围的单元格中创建连接。虽然这会产生无用的细胞,但至少不会有99,900个。
答案 0 :(得分:1)
UsedRange属性可用于确定需要在具有未知数据的工作表上选择的行数/列数。 Here's an example
答案 1 :(得分:1)
如果需要,您可以使Excel自动将公式添加到字段中。只填三个卖:名字 - 姓氏 - 公式。然后选择范围并将其格式化为表格(Home -> Style -> Format as Table
)和Excel,如果您在姓氏中添加了一些内容,则会自动为第三个字段添加公式。
答案 2 :(得分:0)
你不能在C1
公式=A1&" "&B1
中使用,他们双击黑色方块并展开功能吗?然后应用过滤器?
答案 3 :(得分:0)
这是一个如何获取行的示例!
Sub ExampleNames()
Dim MaxRow As Long
Dim i As Long
MaxRow = Worksheet(1).Cells(1, 1).CurrentRegion.Rows.Count 'For Excel 2010 and later
' OR
'MaxRow = Worksheets(1).Cells(1.1).UsedRange.Rows.Count 'For prior Excel Verisons
For i = 1 To MaxRow
' your code to string them together
Next i
End Sub