VBATools

Przeniesienie danych do jednej kolumny

by on Jan.18, 2012, under Excel, Porady

Jeden z forumowiczów zadał pytanie o możliwość przeniesienia z zaznaczonego lub zdefiniowanego obszary dane do jednej kolumny. Poniżej pokazuje rozwiązanie.

Sub przenies_do_jednej_kolumny()
Dim el As Range, max_row&, zakr As Range, y&
Set zakr = Selection 'range("a1:g12")
max_row = Cells(Rows.Count, zakr.Column).End(xlUp).Row
Application.ScreenUpdating = False
For Each el In zakr
 If el.Column > 1 Then
  If Len(el.Value) > 0 Then
  y = y + 1
  Cells(max_row + y, zakr.Column) = el
  el.Clear
  End If
 End If
Next el
max_row = Cells(Rows.Count, zakr.Column).End(xlUp).Row
For y = max_row To zakr.Row Step -1
 If Len(Cells(y, zakr.Column)) = 0 Then Cells(y, zakr.Column).Delete Shift:=xlUp
Next y
Set zakr = Nothing
Application.ScreenUpdating = True
End Sub

XL_Przeniesienie_danych_obszaru_do_jednej_kolumny

Rys 1. Efekt przed i po zastosowaniu procedury

Aby dokończyć dzieła można taką kolumnę danych odfiltrować z duplikatów a następnie zaimportować do autofiltra lub pozostawić dla innych nieopisanych tutaj celów.

 

(c) Shon Oskar – www.VBATools.pl

Wszelkie prawa zastrzeżone. Żadna część ani całość tego artykułu nie może być powielana ani publikowana bez zgody autora.

:, , , ,

Leave a Reply

Recently Active Members

Profile picture of vbatools
Profile picture of Joanna Subik
Profile picture of Karol Stilger
Profile picture of Anorak
Profile picture of marcinmachalowski
Profile picture of programistaaccess
Profile picture of piotrpawlik
Profile picture of Emil Wasilewski
Profile picture of kicekpicek
Profile picture of coldfusion
Profile picture of Gosia Borzęcka
Profile picture of lukaszch
Profile picture of itadministracja
Profile picture of farbenia
Profile picture of Łukasz Kałużny
Profile picture of kabzinski
Profile picture of rtynski
Profile picture of leszekbetlinski
Profile picture of Iv
Profile picture of Justyna Spychała