Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Colore carattere in base al contenuto

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Colore carattere in base al contenuto

Postdi aaa » 05/07/07 16:51

Come faccio ad impostare un colore predefinito di quanto contenuto in una cella a seconda di quello che vado ad inserire?
Mi spiego, seleziono una cella e, appena selezionata o alla prima digitazione, mi deve fare una domanda con risposta "sì/no".
A seconda della risposta, il colore di quello che digiterò dovrà impostarsi automaticamente su quanto da me precedentemente definito, tipo "sì"=colore blu, "no"=colore rosso.
Esempio: immaginiamo di dover fare l'elenco dei mobili presenti in una casa e contemporaneamente, dobbiamo anche indicare quali mobili aggiungere per completare l'arredamento. Chi leggerà l'elenco successivamente, come farà a capire quali sono i mobili presenti e quali da aggiungere?
Considerate che chi dovrà compilare il file ha scarsissime conoscenze excel e quindi va portato veramente per mano nella compilazione e quello che ho fatto è solo un esempio esplicativo ma l'applicazione verrà fatta su un file molto più complesso.
Grazie a tutti
aaa
Utente Junior
 
Post: 22
Iscritto il: 07/07/03 17:07

Sponsor
 

Postdi Anthony47 » 05/07/07 19:26

Immagino che hai quindi predisposto una macro di tipo Worksheet_SelectionChange. Puo' essere sufficiente inserire queste istruzioni
Codice: Seleziona tutto
   Selection.Interior.ColorIndex = 5    'blu
   Rispo = MsgBox("Vuoi colorare di rosso?", 36)
   If Rispo = vbYes Then Selection.Interior.ColorIndex = 3     'rosso


Avendo come uniche ipotesi SI/NO e Rosso/Blu, la macro colora la cella attiva in Blu, salvo colorarla in rosso in funzione della risposta al message box.

Aiuta? Ciao.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13894
Iscritto il: 21/03/06 16:03
Località: Ivrea

Postdi aaa » 06/07/07 11:04

perfetto grazie
fa più effetto piuttosto che colorare il carattere come chiedevo
mi puoi suggerire anche come inserire un controllo cella?
cioè, se non compilo la cella A1, non posso compilare le celle successive della stessa riga (A2, A3) ecc.
aaa
Utente Junior
 
Post: 22
Iscritto il: 07/07/03 17:07

Postdi maxmula » 07/07/07 23:27

Anthony47 ha scritto:Immagino che hai quindi predisposto una macro di tipo Worksheet_SelectionChange.



Anthony47, se non sbaglio l'evento selectionchange agisce solo dopo che la selezione è cambiata, quindi sulla NUOVA cella puntata dall'utente.
Perf poter tenere traccia dell'indirizzo della cella precedente, di solito, ricorro ad un trucco:

Codice: Seleziona tutto
Private sub worksheet_selectionChange()
    RIGA= range("aa1").row    'verifica qual era la vecchia cella
    COLONNA = range ("aa1").column
    if colonna <>2 then goto FINE

      [codice da eseguire se la cella precedentemente selezionata era in colonna 2]


FINE:
   range("aa1").formula=activecell.addresslocal 'Scrive l'indirizzo della vecchia cella

end sub


Ovviamente in AA1 vado a salvare l'indirizzo della cella attualmente puntata: se cambio selezione, le coordinate della vecchia posizione rimangono "tracciate in questa cella... almeno per il tempo che serve a fare i controlli (poi sono sovrascritte).

Per quanto riguarda il problema di aaa, forse conviene di più applicare una Formattazione Condizionale alle celle che interessano:
- Seleziona la cella da modificare
- Formato/Formattazione condizionale
- Inserisci la condizione (relativa alla sola cella corrente, es. "SI")
- Scegli che formato deve assumere la cella se la condizione si verifica (carattere, sfondo, ecc.)

Se hai più celle a cui devi applicare lo stesso formato, copia la prima e poi per ognuna delle altre fai Modifica/Incolla speciale/Formati.

Purtroppo non puoi inserire più di 3 condizioni per cella... ma già così si fanno delle cose carine.

Se vuoi avere anche una domanda nel momento in cui selezioni la cella, prova a dare un'occhiata (approfondita) alla funzione Dati/Convalida ;)


Ciao,
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Postdi Anthony47 » 08/07/07 10:02

Ciao MAX,
sinceramente pensavo che la risposta data ad aaa fosse interlocutoria, cioe' mi aspettavo che l' utente precisasse meglio quello che aveva gia' realizzato e quello che era ancora da fare.
Comunque non ho avuto la sensazione che egli volesse scegliere il contenuto della cella tra SI e NO, ma che la risposta alla domanda SI/NO dovesse servire solo per definire il colore di quanto scritto nella cella.

Lasciamo ad aaa la lettura e l' applicazione del tuo suggerimento sull' uso di Dati /Convalida.

Ciao a tutti.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13894
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "Colore carattere in base al contenuto":


Chi c’è in linea

Visitano il forum: Nessuno e 14 ospiti