VBA - łączenie wyrazów

0

Witam,

zaczynam swoją przygodę z VBA. W kolumnie A1:A4 są imiona, w kolumnie B1:B4 nazwiska. Chciałabym aby w kolumnie C1:C4 było: "Imię Nazwisko". Mój pomysł poniżej. Gdzie popełniam błąd?

Sub przyklad2()

Dim A As String, B As String, C As String
A = Range("A1:A4").Select
B = Range("B1:B4").Select
Range("C1:C4").Select = A + " " + B

End Sub
0

Tak to nie zadziała, zmienna typu String nie przechowa zakresu wartości.
Na początku najlepiej się uczyć nagrywając makra i sprawdzając jaki kod został wygenerowany.

2

Do zmiennej typu string próbujesz przypisać wiele wartości, do tego służą tablice. .Select tylko zaznacza komórki, zastąp go .value

Popatrz na poniższy kod:

Sub laczenie()
    Dim a() As Variant
    Dim b() As Variant
    Dim c() As Variant
    
    a() = Range("a1:a4").Value
    b() = Range("b1:b4").Value
    
    ReDim Preserve c(1 To UBound(a), 1 To 1)
    
    For i = 1 To UBound(c, 1)
        c(i, 1) = a(i, 1) & " " & b(i, 1)
    Next i
    
    Range("c1:c4").Value = c()

End Sub

1 użytkowników online, w tym zalogowanych: 0, gości: 1