Keresés

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

  • poffsoft

    veterán

    válasz KubanitoS #28084 üzenetére

    értem.
    amit javítanod kell, uoszl az utolsó adatot tartalmazó oszlop EXCEL azonosítója szerint, ez nálad az E nevű oszlop a képen, ami ugye az excelnek "F", de nem látom a végét...

    Sub SorTorles()
    Dim sor As Long, usor As Long
    Dim lapsor As Integer
    Dim fejlec As Integer
    Dim aktsor As Integer
    Dim uoszl As String

    usor = Range("B" & Rows.Count).End(xlUp).Row
    lapsor = 29
    fejlec = 4
    uoszl = "F"
    aktsor = fejlec + 1
    For sor = aktsor To usor
    If (sor - 1) Mod lapsor = 0 Then sor = sor + fejlec
    Do While Application.WorksheetFunction.CountA(Range(Cells(aktsor, "B"), Cells(aktsor, uoszl))) = 0 And aktsor <= usor
    aktsor = aktsor + 1
    If (aktsor - 1) Mod lapsor = 0 Then aktsor = aktsor + fejlec
    Loop
    If aktsor > usor Then Exit For
    If Application.WorksheetFunction.CountA(Range(Cells(sor, "B"), Cells(sor, uoszl))) = 0 Then
    Range(Cells(aktsor, "B"), Cells(aktsor, uoszl)).Select
    Selection.Copy
    Application.CutCopyMode = False
    Selection.Cut
    Range(Cells(sor, "B"), Cells(sor, uoszl)).Select
    ActiveSheet.Paste
    End If
    aktsor = aktsor + 1
    If (aktsor - 1) Mod lapsor = 0 Then aktsor = aktsor + fejlec
    If aktsor > usor Then Exit For
    Next
    End Sub

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

Hirdetés