Keresés

Új hozzászólás Aktív témák

  • Fferi50

    Topikgazda

    válasz the radish #53693 üzenetére

    Szia!
    Be kell tenni még egy ciklust, pl. így:
    Sub vba_concatenate()
    Dim rng As Range
    Dim i As String
    Dim SourceRange As Range
    Dim x As Integer
    For x = 1 To 50
    Set SourceRange = Range("I" & x & ":O" & x)
    For Each rng In SourceRange
    i = i & rng
    '& ""
    Next rng
    Range("R" & x).Value = Trim(i)
    Next
    End Sub
    De mutatok egy másik módszert is:
    Sub concat()
    Dim SourceRange As Range, rowrange As Range
    Set SourceRange = Range("I1:O50")
    For Each rowrange In SourceRange.Rows
        Cells(rowrange.Row, "R").Value = Join(Application.Transpose(Application.Transpose(rowrange.Value)), ";")
    Next
    End Sub
    Itt csak a forrástartományt és a cél oszlopot kell megadnod. A Join függvény második paramétere az elválasztó, ezt veheted "" (nullstring) értéknek is.
    Üdv.
    Ps. Azt, hogyan jelennek meg a sorok, a szerkesztőprogram kénye-kedve dönti el. :)

Új hozzászólás Aktív témák