1

基本的に、次のシナリオがあります。

2 列、600 行のデータ。

列 2 からデータをコピーし、同じ行の列 1 のコンテンツの最後に配置する必要があります。これにより、列 1 に元のコンテンツと列 2 の追加コンテンツが追加されます。

これを行う方法に関する情報は大歓迎です。

前もって感謝します!

4

4 に答える 4

1

これは、単純な形式の VBA です。マクロを作成し、これらの行を追加するだけです。次に、元の列 (列 1 と呼んでいるもの) を選択し、マクロを実行します。

a = ActiveCell.Value
b = ActiveCell(1, 2).Value

ActiveCell.Value = a + b

角かっこで囲まれたセル参照は相対ステートメントです。1, 2 は「同じ行、右に 1 列」を意味するため、必要に応じて変更できます。次のように展開してループさせることができます。

Do
a = ActiveCell.Value
b = ActiveCell(1, 2).Value

ActiveCell.Value = a + b

ActiveCell.Offset(1, 0).Select

If ActiveCell.Value = "" Then
    Exit Do
End If
Loop

そのループは、空白のセルが見つかるまで続き、その後停止します。したがって、停止したい場所に空白のセルがあることを確認してください。結合する行に余分な文字を追加することもできます..上記の例ではActiveCell.Value = a + bですが、それを作成することも、他の助けになるものを作成することActiveCell.Value = a + " - " + bもできます。

于 2013-04-08T18:38:00.697 に答える
0

これにより、列 2 から値が取得され、列 1 の下部に順番に配置されます。

Sub test()
Dim rng1 As Range
Dim rng2 As Range
Dim cl As Range
Dim r As Long

Set rng1 = Range("A1", Range("A1048576").End(xlUp))
Set rng2 = Range("B1", Range("B1048576").End(xlUp))

r = rng1.Rows.Count + 1

For Each cl In rng2
    Cells(r, 1).Value = cl.Value
    r = r + 1
Next

End Sub
于 2013-04-08T18:40:30.987 に答える