VBATools

Połączenie danych z osobnych kolumn

by on Feb.13, 2012, under Excel, Porady

Zastanawiacie się jak szybko połączyć dane z zakresów? Możecie oczywiście skorzystać z formuły złącz.teksty() jednakże kiedy mamy do czynienia z większymi zakresami musielibyście wykonać kopie formuły na całym zakresie w osobnej komunie, zamienić wynik na wartości, a następnie usunąć poprzednio wykorzystane w formule kolumny.

Poniżej można znaleźć metodę wykorzystującą unie zakresów, dzięki której szybko pobierzecie dane do pamięci, a w następnym kroku w miejsce danych wstawi połączone z zakresów dane.

Sub polaczenie_zakresow()
 Const kol1$ = "C" 'dane z kolumny C
 Const kol2$ = "D" 'dane z kolumny D
 Dim RR As Range, n&, x&, last_row&
 last_row = Cells(Rows.Count, kol1).End(xlUp).Row
 Set RR = Application.Union(Range(kol1 & "1:" & kol1 & last_row), _
 Range(kol2 & "1:" & kol2 & last_row))
 For x = 1 To RR.Count Step 2
   n = n + 1
   Cells(n, kol1) = RR(x) & RR(x + 1)
   Cells(n, kol2).ClearContents
 Next x
 Set RR = Nothing
End Sub

Zastosowanie makra ilustruje poniższy rysunek:

XL_Polacznie_danych_z_zakresow

Rys. 1 Sposób zastosowania kodu połączenia danych.

Jak widać z pow. kodu, jest to baza do utworzenia bardziej złożonych mechanizmów polegających na połączeniu wielu komórek na różnych zasadach i zastosowaniu różnych łączników (w tym przypadku nie użyto żadnego). Łącznikami mogą być znaki dodane jako string ale i również jako znak chr().

 

(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