首页 > 解决方案 > 如何使用 Excel VBA 输出特定数据并将它们连接到一个新列中?

问题描述

这是我最初的excel表: 这是我最初的excel表:

我希望的输出是 A 列和 B 列的串联,正如您在 F 列中看到的那样: 注意:我将手动添加标题“My_Items”。 我希望的输出,它是 A 列和 B 列的串联:

代码:

Sub Test()

Dim lngLastRow As Long

' Selecting all rows
lngLastRow = Cells(Rows.Count, "A").End(xlUp).row

'To concatenate both columns and insert the values into a new column
Range("G2").Formula = "=A2 & "": "" & B2"
Range("G2").Copy Range("G3:G" & lngLastRow)
    
End Sub

执行代码后的输出: 代码执行后的输出: 我尝试使用跳过空行,If Range("A" & ActiveCell.row) <> ""但没有成功。

标签: excelvba

解决方案


此代码将循环遍历 A 列中包含某些内容的单元格,并将 A 列和 B 列的值连接到 G 列

Option Explicit

Sub Test()
    Dim xlCellA As Range
    Dim LstR As Long
        Set xlCellA = Range("A2")
        LstR = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row
        Do Until xlCellA.Row > LstR
            If xlCellA.Value = "" Then
                xlCellA.Offset(0, 6).Value = xlCellA.Value & ": " & xlCellA.Offset(0, 1).Value
            End If
            Set xlCellA = xlCellA.Offset(1, 0)
        Loop
        Set xlCellA = Nothing
End Sub

推荐阅读