VBA cella hátttérszine alapján dátum csökkentés

VBA cella hátttérszine alapján dátum csökkentés
2020-09-21T21:21:16+02:00
2020-09-22T22:45:49+02:00
2022-10-15T21:26:34+02:00
Nándesz
Sziasztok
Előre is elnézést kérek,ha nem jól adtam meg a témakört. Kezdő excel VBA makrózó vagyokt és nincs informatikus végzettségem, de érdekel ez a téma, mert megkönnyiti a munkám.
Viszont dátum adatfeldolgozás során problémába ütköztem és nem sikerül megoldanom.
A B2 oszlopban vannak dátumok, amelyeket dátumformátummá alakitottam. Ebben az oszlopban vannak rózsaszin hátterű (interior.colorindex=22) és kék hátterű dátumok (interior.colorindex=25).
A kék hátterű cellák dátumát egy nappal korábbi dátumra szeretném lecseréli lehetőleg for each cella in tartomány ciklussal. (2019.11.10 csere 2019.11.09-re).


A segitséget előre is köszönöm!
Mutasd a teljes hozzászólást!
Szia Nándesz!

Feltételezve, hogy a for each ciklus - mivel hivatkoztál rá - kezelése megy, az alábbi egyszerű elágazást használd:

Dim cella As Range
 For Each cella In Range("B2:B2000")
    If cella <> "" Then
        If cella.Interior.Color = 25 Then
            cella.Value = cella.Value - 1
        End If
    End If
Next

Nem írtad, hogy hány soros a B oszlop. Nyilván a fenti kódban a felesleges vizsgálódás elkerülésére, érdemes a "B2:B2000" részt átírni, vagy a for each helyett másik ciklus választani. Valamint a színkódot is érdemes felülvizsgálni, (nálam a 25-ös kód nem kéket jelent)

üdvözlettel
verax
Mutasd a teljes hozzászólást!

Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd