これは惑星で最も愚かな質問かもしれません。 2つのセルの値を縦に繰り返してどのようにマージすることができますか?このようなとして:AとBは400個の+細胞を持っているセルを垂直方向に結合する方法
列は、したがって、私が手動で達成したいものを行うことは不可能です。
注:私はあなたがそれぞれのセルを参照するためにINDEX関数を使用することができますA.
これは惑星で最も愚かな質問かもしれません。 2つのセルの値を縦に繰り返してどのようにマージすることができますか?このようなとして:AとBは400個の+細胞を持っているセルを垂直方向に結合する方法
列は、したがって、私が手動で達成したいものを行うことは不可能です。
注:私はあなたがそれぞれのセルを参照するためにINDEX関数を使用することができますA.
あなたは、データの各セルまでの範囲で実行さ
Sub Merge()
Dim data As Range
Dim cell As Range
Dim output As Range
Dim i As Integer
Set data = Range("A2:B4")
Set output = Range("D2")
i = 0
For Each cell In data
output.Offset(i, 0) = cell
i = i + 1
Next
End Sub
にBをマージしたいです。データがA2である場合:B4、この式は、任意の列で動作しますが、行2に開始する必要があり、その後、ダウン充填することができる。
=INDEX($A$2:$B$4,ROW()/2,MOD(ROW(),2)+1)
式はカウンタとして現在の行を使用します。すべての偶数行では、データの最初の列から値を取得し、奇数行ごとに2番目のデータ列から値を取得します。 2行ごとに、次のデータ行から値が取得されます。
ありがとうマイケルは働いています私は何のoutput.Offset(i、0)=セル とi = i + 1が何をしているのか学習したいですか? – shaadi
Offsetプロパティを読み上げます。各ループは、データ範囲内の現在のセルからの値を開始出力範囲D2の下の次の行に入れています。 https://msdn.microsoft.com/en-us/library/office/aa221543(v=office.11).aspx – Michael