Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Excel VBA - Formátovanie

Druhé makro pre list PT21, ktoré počíta s tým, že počet stĺpcov v tabuľkách na listoch PrvaSK4 a DruhaSK4 je rovnaký (počet riadkov nemusí byť rovnaký), môže vyzerať takto:

Private Sub Worksheet_Activate()
    Dim srcRange As Range
    Dim dstCell As Range
    Dim aRange As Range
    Dim aCell1 As Range
    Dim aCell2 As Range

    Cells.ClearContents

    Set srcRange = Worksheets("PrvaSK4").Range("B3")
    nRows = srcRange.End(xlDown).Row - srcRange.Row + 1
    nColumns = srcRange.End(xlToRight).Column - srcRange.Column + 1

    Set srcRange = srcRange.Resize(nRows, 2)
    Set dstCell = Range("A1")

    Set aCell1 = Worksheets("PrvaSK4").Range("B3").End(xlDown).Offset(1, 1)
    Set aCell2 = Worksheets("DruhaSK4").Range("B3").End(xlDown).Offset(1, 1)

    For i = 1 To nColumns / 3
        If aCell1 >= aCell2 Then
            srcRange.Copy
            dstCell.PasteSpecial xlPasteValues

            Set dstCell = dstCell.Offset(0, 2)
            If dstCell.Column / 24 > 1 Then
                Set dstCell = dstCell.Offset(srcRange.Rows.Count + 1).End(xlToLeft)
                If dstCell.Row <= 44 And dstCell.Row + srcRange.Rows.Count > 44 Then
                    Set dstCell = dstCell.Offset(44 - dstCell.Row + 1)
                End If
            End If
        End If

        Set srcRange = srcRange.Offset(0, 3)
        Set aCell1 = aCell1.Offset(0, 3)
        Set aCell2 = aCell2.Offset(0, 3)
    Next i
End Sub

Pre list PT2 treba v makre nahradiť riadok
Set srcRange = Worksheets("PrvaSK4").Range("B3")
za riadok
Set srcRange = Worksheets("DruhaSK4").Range("B3")
a obidva riadky
If aCell1 >= aCell2 Then
za riadky
If aCell1 < aCell2 Then

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny