Mecze sie z napiasniem prostego makra, ktorego zadaniem będzie
przenoszenie danych z komorek znajdujacych sie w sasiednich kolumnach
jednego wiersza do jednej kolumy (np. w innym arkuszu). Czyli dane
powinny znajdowac sie pod soba.
> Zpomnialem dodac - mowie o VB w Excelu :)
Zapusc petle i niech zrobi.
x=1
y=1
while sheets("a").cells(x,1)<>""
sheets("b").cells(y,1)=sheets("a").cells(x,1)
sheets("b").cells(y+1,1)=sheets("a").cells(x,2)
sheets("b").cells(y+2,1)=sheets("a").cells(x,3)
y=y+1
wend
cos w tym stylu.
...a moze wystarczy zaznaczyc odpowiednie wiersze, Ctrl+C a nastepnie PPM,
opcja "Wklej specjalnie...", zaznaczyc "Transpozycja" i OK.
--
Pozdrawiam
Rafal Kwaczala
Zastosowalem sie do Twojej wskazowki, ale nie dziala tak jak powinno.
Kolumna w Arkusz2 zapelniana jest trzema wierszami przeniesionymi z
trzech kolumn Arkusz1 do samego konca kolumny, az wyrzucany jest blad.
Zmienilem w kodzie na : x=x+1, ale wtedy pokazuje tylko wiersze
przeniesione z pierwszego wiersza Arkusz1 a chcialbym, aby pobieral w
ten sam sposob kolejne wiersze z Arkusz1 i wstawial do Arkusz2.
Ponizej kod, ktory stosowalem:
Sub kol()
Dim x, y As Integer
x = 1
y = 1
While Sheets("Arkusz1").Cells(x, 1).Value <> ""
Sheets("Arkusz2").Cells(y, 1) = Sheets("Arkusz1").Cells(x, 1)
Sheets("Arkusz2").Cells(y + 1, 1) = Sheets("Arkusz1").Cells(x, 2)
Sheets("Arkusz2").Cells(y + 2, 1) = Sheets("Arkusz1").Cells(x, 3)
x = x + 1
Wend
End Sub
Sub kol()
Dim x, y As Integer
x = 1
y = 1
While Sheets("Arkusz1").Cells(x, 1).Value <> ""
Sheets("Arkusz2").Cells(y, 1) = Sheets("Arkusz1").Cells(x, 1)
Sheets("Arkusz2").Cells(y + 1, 1) = Sheets("Arkusz1").Cells(x, 2)
Sheets("Arkusz2").Cells(y + 2, 1) = Sheets("Arkusz1").Cells(x, 3)
x = x + 1
y = y + 3
Wend
End Sub
Sub kol()
Dim x, y As Integer
x = 1
y = 0
While Sheets("Arkusz1").Cells(x, 1).Value <> ""
z = 1
While Sheets("Arkusz1").Cells(x, z) <> ""
Sheets("Arkusz2").Cells(y + z, 1) = Sheets("Arkusz1").Cells(x, z)
z = z + 1
Wend
x = x + 1
y = y + z - 1
Wend
End Sub
Wielkie Dziękuję!
... i pozdrowionka