Excel - formattazione condizionale in forme?


6

Per molto tempo, non pensavo che fosse possibile avere una forma (ad esempio, una casella di testo) con un valore impostato per formula, ma risulta che è possibile. Allo stesso modo, appare che non è possibile applicare la formattazione condizionale alle forme (l'opzione è disattivata nella barra multifunzione in Excel 2007); c'è un modo segreto per aggirare questo aspetto ingrigito e applicare la formattazione condizionale a una forma? Nel caso in cui la risposta sia diversa per diversi tipi di forme o formati, sto specificatamente cercando di applicare in modo condizionale colori diversi a un rettangolo.

E la ragione per cui voglio farlo è che non possiamo usare macro per questo caso specifico.

Risposte:


4

No, ma puoi fingere

Puoi fingere ma ci vuole un po 'di setup. Funzionerà a meno che non ti serva veramente grandi forme. Ecco i passaggi per la creazione n diverse forme di formato condizionale in Excel 2010.


tl; dr Usa 1 cella in più e 1 casella di testo per ogni condizione desiderata. Ogni casella di testo è impostata per mostrare un testo gigante con enormi contorni e ombre, tutti dello stesso colore. Le celle aggiuntive sono configurate per mostrare il testo solo se il valore soddisfa la condizione.


  1. Creare n colonne helper che verranno visualizzate in bianco a meno che il valore non soddisfi le condizioni corrette. Un semplice esempio per n = 3 casi potrebbero essere: (entreremo nel motivo per cui l'ho usato "888" dopo

    =IF(A1=1,"888","") =IF(A1=2,"888","") =IF(A1=3,"888","")
    Per ora, però, basta riempire le colonne di aiuto con il testo, non una formula.

  2. Formattare il colore del testo in ogni colonna helper per essere corretto per quella condizione

  3. Crea una casella di testo della dimensione corretta e inserisci un testo (E.G. "Hello World")
  4. Formatta i bordi come preferisci, ma assicurati che il riempimento sia No Fill
  5. Fai clic con il pulsante destro del mouse sul testo e fai clic su "Formatta effetti di testo ..." nella parte inferiore del menu di scelta rapida
  6. Imposta il contorno del testo su una linea continua nel colore corretto per la condizione 1
  7. Imposta lo stile struttura su 25pt o qualcos'altro molto alto
  8. Imposta l'ombra su Outer & gt; Centro offset con una trasparenza dello 0% e una dimensione del 200%
  9. Copia questa casella di testo n-1 volte così ora hai n totale
  10. Cambia le impostazioni del colore per ciascuna a sua volta per essere quello che ti serve
  11. Torna indietro e imposta la formula affinché ognuna sia una delle colonne helper, assicurandoti di connetterla a quella corretta
  12. Se il testo che inserisci le caselle di testo non è corretto, torna in ognuna e modificalo
  13. Per ciascuna casella di testo, impostare la dimensione del carattere su 70 o qualsiasi dimensione necessaria per riempire interamente la casella con il colore
  14. Una volta che tutto è impostato, torna indietro e modifica le colonne di supporto per essere formali. Chiedi loro di mostrare del testo che occupa molto spazio come 8, # o un simbolo di casella.
  15. Provalo per assicurarti che, per ogni valore, una casella di testo mostri il colore e il resto non mostri alcun riempimento
  16. Impila tutte le caselle di testo (Allinea & gt; Sinistra e Allinea & gt; In alto potrebbe essere utile) e raggruppale in modo che non si incasinino facilmente

Ecco alcuni screenshot di un mockup che ho fatto.
Si noti che la casella ha cambiamenti di colore man mano che il valore cambia. Se li avessi impilati, sembrerebbe una singola forma che cambia colore.

Value 1

Value 2

Value 3


1
Questa è una grande idea, utilizzando più caselle di testo con formattazione statica e "testo condizionale" per aggirare questa limitazione. Ma con tutti i passaggi per far apparire "888" come una scatola, è stato un po 'difficile capire l'idea centrale. Ho provato le texbox sovrapposte e le celle multiple, e funziona altrettanto bene con una "n" di Wingdings (una scatola piena) a 200pt. Grazie! Spero che questo aiuti il ​​prossimo Googler!
kcrumley

2
Spero che ci sia un qualche tipo di badge per "Domande poste su StackOverflow durante la beta, prima che SuperUser.com esistesse, e migrato su un altro sito, e accettato 6 anni e mezzo dopo".
kcrumley

1
@kcrumley Tutti i contorni e le cose extra erano solo per renderlo molto più grande nel caso in cui avessi bisogno di forme così grandi da colpire la limitazione della dimensione del carattere. Questo sarebbe un po ' grande scatole, anche se ...
Engineer Toast

2
Questo è incredibilmente hacky e creativo. +1
Andre Terra

2

Non sono sicuro che ci sia. Nel 2007, come le versioni precedenti di Excel, FormatConditions può essere applicato solo agli intervalli, non alle forme.

Tuttavia, se sto capendo correttamente la tua situazione in quanto non puoi usare macro, allora non sono sicuro che saresti in grado di applicare la formattazione condizionale dietro le quinte in ogni caso ... e se tu potessi usare le macro / VBA, quindi non avresti necessariamente bisogno della formattazione condizionale; dovresti essere in grado di eseguire una procedura per formattare le forme secondo necessità. Qualcosa come il seguente dovrebbe funzionare, ma suppongo che tu abbia già scoperto questa parte:

ActiveWorkbook.ActiveSheet.Shapes(1).Fill.ForeColor.RGB = RGB(0, 0, 255)

Se si desidera formattare le forme in base ai valori così come sono stati immessi nel foglio di lavoro, allora sì, sarebbe più semplice utilizzare la formattazione condizionale se fosse disponibile.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.