Keresés

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

  • Delila_1

    veterán

    válasz tomi_x #46141 üzenetére

    Próbáld ezzel:

    Sub Formazas()
        Dim sor As Long, usor As Long
        usor = Range("A" & Rows.Count).End(xlUp).Row
        
        For sor = 2 To usor
            If Cells(sor, 1) = Cells(sor + 1, 1) Then
                With Range(Cells(sor, 1), Cells(sor, 15)).Font
                    .ThemeColor = xlThemeColorDark1
                    .TintAndShade = 0
                End With
                Range(Cells(sor, 1), Cells(sor, 15)).Borders(xlEdgeBottom).LineStyle = xlNone
            Else
                With Range(Cells(sor, 1), Cells(sor, 15)).Borders(xlEdgeBottom)
                    .LineStyle = xlContinuous
                    .ColorIndex = 0
                    .TintAndShade = 0
                    .Weight = xlMedium
                End With
                Range(Cells(sor, 1), Cells(sor, 15)).Font.ColorIndex = xlAutomatic
            End If
        Next
    End Sub

  • Lasersailing

    senior tag

    válasz tomi_x #46141 üzenetére

    Szia,

    Ha a VBA-ban a makrót F8-al indítod el, akkor lépésenként látod, hogy mit csinál (Nem kell "Várj" típusú ellenőrzésekkel vesződni. Ha nagyon hosszú a makró futása, akkor a megfelelő sorra állva F9-el be tudod jelőlni, hogy ott álljon meg a makró futtatása. (piros lesz a kijelőlt sor. (ugyanezt elérheted az ablak bal szélén lévő sávra kattintva is).
    (sárgával jelőli, hogy hol tart).

    Arra figyelj, hogy ha lépésenkénti futás közben pl. a kijelőlést megváltoztatod, akkor ő a változtatás hatásával megy tovább. Futás közben is lehet korlátozásokkal változtatni a makrót, sőt a sárga "csíkot" egérrel át lehet húzni máshova is. (ha pl. rájösz, hogy valami nem jó, akkor átírod, majd újra tudod lépésenként futtatni).

    Szerk:
    Az alábbi sor egyenlőségjele után kimaradt a ".value". Nem biztos, hogy ez a gond, de én beírnám:
    If Worksheets(1).Cells(i, 1).Value = Worksheets(1).Cells(kovetkezo_sor, 1).value Then

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