Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Colorare un cella in funzione della data

Ultimo Aggiornamento: 04/01/2017 20:35
Post: 9
Registrato il: 03/09/2015
Città: CASTEL GANDOLFO
Età: 66
Utente Junior
2010
OFFLINE
03/01/2017 10:14

Buongiorno a voi tutti,
espongo il mio problema. In un calendario, vorrei che una volta inserito l’anno desiderato(nel primo foglio), compaia nel foglio di Marzo o Aprile (in base alla data immessa)la casella colorata corrispondente al “lunedì di Pasqua”. Mi spiego meglio con un esempio.
Nel primo foglio inserisco la data 2017, con la funzione
=ARROTONDA.DIFETTO(DATA(D4;5;GIORNO(MINUTI(D4/38)/2+56));7)-34
estrapolo il giorno ed il mese e cioè il 16 aprile. Ora vorrei che Excel, mi colorasse nella scheda(foglio) di aprile lo sfondo della cella corrispondente al giorno 17.
Che funzioni devo utilizzare? Grazie e Buon anno
Post: 2.538
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Veteran
Excel 365
OFFLINE
03/01/2017 11:29

Ciao Halvin

Allega un file di esempio spiegando su questo cosa vuoi fare/ottenere.

Alfredo
Post: 9
Registrato il: 03/09/2015
Città: CASTEL GANDOLFO
Età: 66
Utente Junior
2010
OFFLINE
03/01/2017 13:49

Dunque, se scaricate il file uplodato (giusto un anno fa) http://www.freeforumzone.com/d/11225039/-/discussione.aspx potete capire meglio ciò che chiedo.
Vorrei fare in modo, che quando si inserisce la data voluta nella scheda “IMPOSTAZIONI” , in automatico si dovrebbe colorare di rosso la cella che corrisponde al lunedì seguente a Pasqua ( che può cadere o in marzo o in aprile) segnandola così come giorno festivo. Tutto chiaro? [SM=x423053] Grazie
Post: 2.542
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Veteran
Excel 365
OFFLINE
03/01/2017 15:54

Ciao Alessandro

Premetto che forse quello che io ho fatto con le macro si poteva realizzare anche con la formattazione condizionale ma io con questa non sono bravo.

In ogni caso ti allego il tuo file dove ho inserito le seguenti macro

vb
Private Sub Worksheet_Change(ByVal Target As Range)
Dim mese As String
Dim mesi As Range
Set mesi = Worksheets("Foglio1").Range("a1:b12")
Application.ScreenUpdating = False
Call RipristinaColore
If Not Intersect(Target, Range("E5")) Is Nothing Then
    mese = Application.WorksheetFunction.VLookup(Month(Range("h5").Value), mesi, 2, False)
    Sheets(mese).Select
    ActiveSheet.Cells(1, Day(Worksheets("IMPOSTAZIONI").Range("h5").Value + 3)).Select
    ActiveCell.Interior.ColorIndex = 3
End If
Application.ScreenUpdating = True
Worksheets("IMPOSTAZIONI").Activate
End Sub


vb
Sub RipristinaColore()
Dim i As Integer
Dim rng As Range
Dim cel As Range
For i = 1 To ThisWorkbook.Sheets.Count
Set rng = Sheets(i).Range("c1:ag1")
    For Each cel In rng
        If cel.Value = "lun" Or cel.Value = "mar" Or cel.Value = "mer" Or cel.Value = "gio" Or cel.Value = "ven" Then
            cel.Interior.ColorIndex = xlNone
        End If
    Next cel
Next i
End Sub


La prima ogni volta che si cambia l'anno sul foglio "IMPOSTAZIONI" va a colorare di rosso il lunedì in albis di quell'anno e la seconda (che viene richiamata nella prima) provvede a ripristinare il colore (quando si cambia l'anno).

Prova e fai sapere se era questo quello che volevi.

Alfredo
Post: 10
Registrato il: 03/09/2015
Città: CASTEL GANDOLFO
Età: 66
Utente Junior
2010
OFFLINE
03/01/2017 20:19

Grazie Alfredo, appena posso provo e ti faccio sapere.
Grazie ancora [SM=g27811]

Alessandro
Post: 11
Registrato il: 03/09/2015
Città: CASTEL GANDOLFO
Età: 66
Utente Junior
2010
OFFLINE
04/01/2017 20:35

Ciao Alfredo,
ho provato la tua modifica utilizzando la macro, mo ho notato che dà dei problemi del tipo che se viene reinmessa una nuova data nel foglio "impostazioni" non cancella la festività ottenuta precedentemente, e ripetendo il cambio dell'anno, si creano degli "accavallamenti" delle festività.
Cercherò di risolvere con qualche formattazione condizionale (spero [SM=x423024] ).
In ogni modo ti ringrazio ancora della tua disponibilità.
Alessandro
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 04:27. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com