You are here:--[RISOLTO] Formattazione condizionale di un intervallo di celle
[RISOLTO] Formattazione condizionale di un intervallo di celle2018-06-19T12:20:35+02:00

Home Forum Domande su Excel VBA e MACRO [RISOLTO] Formattazione condizionale di un intervallo di celle

  • Autore
    Articoli
  • Avatarpucc973
    Partecipante
      Post totali: 4

      Buongiorno a tutti, come da titolo avrei bisogno di un codice che mi inserisca i valori di formattazione condizionale impostati per un intervallo di celle in una msgbox.

      Ho un foglio nel quale vengono inseriti dei valori a seconda dei quali le celle vengono formattate. È mia necessità variare di volta in volta la formattazione condizionale (da adesso FC), per fare ciò avrei bisogno di conoscere, se possibile, il FC precedentemente immesso in quel determinato intervallo di celle, magari attraverso una Msgbox. Grazie in anticipo per l’aiuto. Colgo l’occasione per fare un saluto al forum, essendomi appena iscritto. Spero di imparare sempre meglio ad usare il vba di Excel, magari anche attraverso il vostro prezioso aiuto.

      • Questo argomento è stato modificato 1 anno, 1 mese fa da sid sid.
    • BySalvBySalv
      Amministratore del forum
        Post totali: 477

        Ciao Pucc, benvenuto, inserisci un file con la formattazione che hai ed il risultato che vuoi ottenere, cosi vediamo cosa intendi

        per inserire il file vai in “Come Fare”

        Ciao By Sal  :bye:

         

      • Avatarpucc973
        Partecipante
          Post totali: 4

          Ciao By Sal, grazie della risposta… ti allego il file, spero di aver capito come fare.

          Il file che ti allego è un file d’esempio che ho fatto per l’occasione, quello originale non posso postarlo perchè è un file di lavoro. Nel file c’è un intervallo con dei numeri inseriti in celle formattate a seconda del valore dei numeri. Premendo il pulsante si apre una input box che chiede quale è l’intervallo da formattare e con quali valori. Io vorrei che subito dopo l’imput box che chiede di inserire l’intervallo mi si apra una msgbox con i valori di formattazione attuali presenti gia nella celle; si tratta ovviamente di valori che formattano le celle in itervalli, cioe ‘formatta di verde se minore di’ oppure di ‘rosso se maggiore di’. Spero di essere stato chiaro, in pratica una ‘Info’ sulla formattazione preesistente nelle celle dell’intervallo selezionato.

          Ecco il file:

          <br />

        • BySalvBySalv
          Amministratore del forum
            Post totali: 477

            Ciao Pucc, purtroppo almeno per me non ce modo di sapere com’è formattata la cella con la formattazione condizionale.

            sto facendo delle prove per vedere se riesco a risalire alle proprietà, ti faccio sapere.

            Ciao By Sal  :bye:

             

          • Avatarpucc973
            Partecipante
              Post totali: 4

              Grazie Sal, avevo il sentore che il problema non fosse di semplice soluzione, comunque resto in attesa se a qualcuno dei partecipanti al Forum dovesse venire qualche idea. Ovviamente scriverò se riesco a risolvere.

              Grazie!  :bye:  

            • BySalvBySalv
              Amministratore del forum
                Post totali: 477

                Ciao Pucc, non sono riuscito a trovare niente nelle proprietà.

                Ma mi spieghi perche vuoi sapere la formattazione condizionale, possono esserci altri metodi per avere ciò che vuoi, perche ti serve?, a cosa ti serve?, si può trovare una scappatoia.

                Ciao By Sal  :bye:

                 

                 

              • Avatarpucc973
                Partecipante
                  Post totali: 4

                  Buonasera Sal, in effetti il file che ho postato è talmente semplificato che quasi non ha senso, mi rendo conto. Il file originale è un database di dati numerici che riassumono l’andamento su linee di produzione. È quasi completamente protetto, perché viene compilato da numerose persone tramite una Userform che non consente di fare errori. La necessità della formattazione condizionale nasce dal fatto che formattando i valori secondo necessità, i dati assumono di volta in volta significati diversi; la formattazione rende i dati più diretti e velocemente comprensibili. Quindi la formattazione condizionale viene modificata a seconda dei valori di produzione richiesti, con quella piccola macro che ho inserito nel file di prova che ho postato, ovviamente, se durante la modifica, automaticamente la macro mi informa della formattazione già preesistente nelle celle, la macro è ancora più diretta e semplificata, tutto qui .. Mi scuso se mi sono un po’ dilungato, ma il tuo interesse meritava qualche spiegazione in più. Comunque … Sono aperto a qualsiasi consiglio che tu o altri possono darmi.

                  Grazie ancora!

                   

                • BySalvBySalv
                  Amministratore del forum
                    Post totali: 477

                    Ciao allora a questo punto puoi fare in questo modo, visto che usi bene le macro, quando lanci la macro un messaggio con la formattazione Condizionale attuale.

                    Come puoi ricavarla stesso dalla macro che vai a lanciare, ammettendo che hai modificato la formattazione in qualche parte del foglio vai a scrivere la formattazione modificata, eccoti un immagine del risultato
                    Cattura2

                    questo il codice che ho aggiunto alla tua macro fatto velocemente

                     Dim a As String
                    Dim b As String
                    Dim tmp As String, risp
                    
                    On Error GoTo Line1
                    
                    tmp = "Formattazione attuale" & Chr(13) & Chr(13)
                    tmp = tmp & "Arancio valore compreso tra " & Cells(2, 18) & " e " & Cells(2, 19) & Chr(13)
                    tmp = tmp & "Rosso valore Maggiore di " & Cells(3, 18) & Chr(13)
                    tmp = tmp & "Verde Valore Minore di " & Cells(4, 18) & Chr(13)
                    tmp = tmp & "Giallo Errore" & Chr(13) & Chr(13)
                    tmp = tmp & "CONTINUO?"
                    risp = MsgBox(tmp, vbInformation + vbYesNo, "Formattazione attuale")
                    If risp = 7 Then Exit Sub

                    logico che alla chiusura della tua macro vai a riportare i valori delle inputbox sul foglio nelle celle appropriate cosi quando si lancia una nuova formattazione riporta la formattazione che è stata applicata precedentemente.

                    allego anche il tuo file modificato.

                    Ciao By Sal :bye:

                    https://mega.nz/#!tRdkRaLZ!Nww2Y7969C1c0yhMFR7BfYYEEiaD1dsa6fQXyxeCmIs

                  • Avatarpucc973
                    Partecipante
                      Post totali: 4

                      Grazie Sal, la soluzione è perfetta. Grazie ancora. Alla prossima!  :bye:

                    La discussione ‘[RISOLTO] Formattazione condizionale di un intervallo di celle’ è chiusa a nuove risposte.

                    Utilizzando il sito, accetti l'utilizzo dei cookie da parte nostra. maggiori informazioni

                    Questo sito utilizza i cookie per fornire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o cliccando su "Accetta" permetti il loro utilizzo.

                    Chiudi