Şöyle verilere sahip onları yığın ...Excel sayıda sütun alıp iki sütun
a 1 c 3 e 5
b 2 d 4 f 6
Ve bu çevirmek için VBA bir senaryo yazmak istiyorum ister ... diğer bir deyişle,
a 1
b 2
c 3
d 4
e 5
f 6
, her iki sütun iki yeni sütun halinde dizilir.
Aşağıdaki kod tek sütunlar için çalışıyor ... İki işe mi çalışacağım? Örneğin, her bir harfli sütun için bir kez, sonra her numaralı sütun için bir kez daha iki kez çalıştırmanın bir yolu var mı? Ya da belki de daha temiz bir yol?
Sub StackColumns()
Dim X As Long, LastColumn As Long
LastColumn = Cells.Find(What:="*", SearchOrder:=xlByColumns, _
SearchDirection:=xlPrevious, LookIn:=xlValues).Column
For X = 1 To LastColumn
Columns(X).Resize(Cells(Rows.Count, X).End(xlUp).Row).Copy _
Cells(Rows.Count, LastColumn + 1).End(xlUp).Offset(-(X > 1))
Next
On Error Resume Next
Columns(LastColumn + 1).SpecialCells(xlBlanks).Delete xlShiftUp
End Sub`
teşekkür ederiz. Ancak, ikiden fazla sıra varsa ne olur? – user2192778
Bu kod için basit bir değişiklik olurdu .......... ama tam eşleme tanımlamanız gerekir ................. geçerli kod aslında transferler Bir tabakadan diğerine ** 4 ** hücre blokları. –