使用VBA跨列复制文本

时间:2016-08-12 14:52:51

标签: excel vba excel-vba

我在excel工作簿中有一个包含“输出示例”的列和另一个包含定义的列。我需要输出示例在定义中。所以我写了一个宏,在文本末尾加上短语“Ex:”,然后复制相邻列中的文本并在“Ex:”后粘贴它。

   Sub Exampletransfer()
'
' Exampletransfer Macro
'
' Keyboard Shortcut: Ctrl+Shift+E
'
    Range("H2").Select
    ActiveCell.FormulaR1C1 = _
        "The age range, in years of a customer. Ex: "
    Range("I2").Select
    ActiveCell.FormulaR1C1 = "1-4"
    Range("H2").Select
    ActiveCell.FormulaR1C1 = _
        "The age range, in years of a customer. Ex: 1-4"
    Range("H3").Select
End Sub
我附了一张照片。我需要这个发生在整个专栏中。我想我不明白如何让宏继续下一列。

What I have What I need

1 个答案:

答案 0 :(得分:3)

你走了。确保在Range和Cells方法中更改数据的开始位置!

Sub AppendData()

Dim myRange As range
Dim myCell As range

'Change where you data starts. My practice started in B4, so that's
'what I used.
Set myRange = range("B4", Cells(Rows.count, "B").End(xlUp))


For Each myCell In myRange
    If myCell.Value <> "" Then
        myCell.Value = myCell.Value & " Ex: " & myCell.Offset(0, 1).Value
    End If
Next myCell


End Sub