Sviluppare funzionalita su Microsoft Office con VBA Come creare un calendarietto in Excel

LoginRegistrati
Stai vedendo 4 articoli - dal 1 a 4 (di 4 totali)
  • Autore
    Articoli
  • #9489 Risposta

    vecchio frac
    Senior Moderator
      171 pts

      Prendendo spunto dall'esigenza di uno dei nostri utenti del forum, ecco una soluzione semplice e carina per realizzare una vista mensile di un calendario, posizionabile poi a piacere nel foglio e ulteriormente formattabile, non fa uso di formule nè di formattazioni condizionali, tiene conto dei sabati e delle domeniche colorandole di rosso.

      [Leggi tutto al seguente link: https://www.excelvba.it/forumexcel/come-creare-un-calendarietto-in-excel/]

      #9530 Risposta
      Marius44
      Marius44
      Moderatore
        36 pts

        Ciao V.F.

        Complimenti per l'ottimo lavoro     

         

        Un'altra opportunità potrebbe essere quella di sfruttare l'Evento Worksheet_Change della cella B1 del Foglio (evitando così il pulsante e l'InputBox)

        Ciao,

        Mario

        #9533 Risposta

        vecchio frac
        Senior Moderator
          171 pts

          Yessa, infatti mi son divertito a espandere un pochino la proposta altrimenti era scialba 😀

          Il cuore del carciofo, pardon del codice è solo la routine del modulo crea_calendar che potrebbe anche stare da sola, senza parametri, prendendo la data da una cella qualsiasi.

          Massima personalizzazione, ed è lo scopo di questi articoli... fornire lo spunto   

          #9589 Risposta
          Luca73
          Luca73
          Partecipante
            44 pts

            Aggiungerei il seguente pezzettino se interessa evidenziare il giorno corrente

            Private Sub Workbook_Open()
            Dim CellaW As Range
            With Sheets(1)
            .Range(.Range("A4"), .Range("A4").End(xlToRight).End(xlDown)).Interior.Pattern = xlNone
                If Date >= .Range("A4") And Now <= .Range("A4").End(xlToRight).End(xlDown) Then
                    For Each CellaW In .Range(.Range("A4"), .Range("A4").End(xlToRight).End(xlDown))
                        If CDate(CellaW) = Date Then
                            CellaW.Interior.Color = 5296274
                            Exit For
                        End If
                    Next
                End If
            End With
            End Sub
            
          LoginRegistrati
          Stai vedendo 4 articoli - dal 1 a 4 (di 4 totali)
          Rispondi a: Come creare un calendarietto in Excel
          Gli allegati sono permessi solo ad utenti REGISTRATI
          Le tue informazioni:



          vecchio frac - 2750 risposte

          patel
          patel - 1089 risposte

          albatros54
          albatros54 - 1062 risposte

          Marius44
          Marius44 - 1000 risposte

          Luca73
          Luca73 - 798 risposte