• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

VBA łączenie danych i przepisanie - petla

Mały hosting, OGROMNE możliwości
0 głosów
3,051 wizyt
pytanie zadane 4 kwietnia 2018 w Visual Basic przez krzysztooof94 Początkujący (350 p.)

Witam, w jaki sposób połączyć dane z 3 kolumn z jednego skoroszytu i przypisanie do drugiego skoroszytu, łączyłem za pomocą funkcji "ZŁĄCZ.TEKSTY" i działa ok w miarę, tylko łączy w jeden ciąg i nie wiem jak to przerobić, aby działało w petli, czyli w zależności ile wierszy w skoroszycie A tyle połączonych w skoroszycie B. 

 

W zależności od ilości danych w arkuszu 1. 

 

Łączenie ale tylko dla 1 przypadku : 

Sub Przycisk3_Kliknięcie()
'
' Przycisk3_Kliknięcie Makro
'

'
    Sheets("Arkusz2").Select
    Range("A6").Select
    Sheets("Arkusz1").Select
    Range("A8").Select
    Sheets("Arkusz2").Select
    ActiveCell.FormulaR1C1 = _
        "=CONCATENATE(Arkusz1!R[2]C,Arkusz1!R[2]C[1],Arkusz1!R[2]C[2])"
    Sheets("Arkusz1").Select
End Sub

 

1 odpowiedź

0 głosów
odpowiedź 4 kwietnia 2018 przez Czachuu Obywatel (1,160 p.)
wybrane 5 kwietnia 2018 przez krzysztooof94
 
Najlepsza

Witam, może tak:

Sub Przycisk3_Kliknięcie()
Dim i As Integer, ostw As Integer
ostw = Sheets("Arkusz1").Cells(Rows.Count, "A").End(xlUp).Row
For i = 1 To ostw
    Sheets("Arkusz2").Cells(i, "A").Value = Sheets("Arkusz1").Cells(i, "A").Text & " " & Sheets("Arkusz1").Cells(i, "B").Text & " " & Sheets("Arkusz1").Cells(i, "C").Text
Next i
End Sub
komentarz 4 kwietnia 2018 przez niezalogowany

Super, dzięki bardzo, a jeszcze masz może pomysł na to aby zawijać tekst w danej komórce w Akrukuszu 2 :

jeden
dwa 
trzy

dla jednej komórki, żeby nie były obok siebie tylko w ten sposób :)

komentarz 5 kwietnia 2018 przez Czachuu Obywatel (1,160 p.)

Zmień doklejone spacje na znak nowej linii chr(10):

Sheets("Arkusz2").Cells(i, "A").Value = Sheets("Arkusz1").Cells(i, "A").Text & Chr(10) & Sheets("Arkusz1").Cells(i, "B").Text & Chr(10) & Sheets("Arkusz1").Cells(i, "C").Text

 

Podobne pytania

0 głosów
1 odpowiedź 582 wizyt
pytanie zadane 1 września 2022 w Visual Basic przez morking Nowicjusz (210 p.)
+1 głos
0 odpowiedzi 1,231 wizyt
+1 głos
2 odpowiedzi 1,379 wizyt
pytanie zadane 8 listopada 2021 w Visual Basic przez Quba Użytkownik (870 p.)

93,718 zapytań

142,631 odpowiedzi

323,262 komentarzy

63,265 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...