Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

[excel] Colore dei caratteri (font)

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

[excel] Colore dei caratteri (font)

Postdi biancocandido55 » 09/04/09 13:26

Ciao ragazzi,
mi è capitata questa macro
Codice: Seleziona tutto
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim CL As Object
For Each CL In Range("A1:F100")    'per ogni cella in A1:F100
If CL.Value = "A" Then        'se il valore della cella è uguale ad A
CL.Font.ColorIndex = 3       'mi metti il colore del carattere uguale a rosso
ElseIf CL.Value = "B" Then   'se invece il valore è uguale a B ecc.ecc
CL.Font.ColorIndex = 4
ElseIf CL.Value = "C" Then
CL.Font.ColorIndex = 8
ElseIf CL.Value = "D" Then
CL.Font.ColorIndex = 9
ElseIf CL.Value = "E" Then
CL.Font.ColorIndex = 5
ElseIf CL.Value = "F" Then
CL.Font.ColorIndex = 7
End If
Next
End Sub

che permette di scrivere caratteri, numeri o frasi colorate nell'ambito di una cella, chiaramente colore carattere diverso per ogni variabile impostata, qui sorge la mia richiesta. Mi servirebbe una macro che cambia colore ai font ogni volta che digito un carattere o numero, in modo da poter scrivere colorato in questo modo
"super pippo"

come sempre ringrazio per l'aiuto.
ciao
bianco
biancocandido55
Utente Senior
 
Post: 305
Iscritto il: 03/03/06 10:15

Sponsor
 

Re: [excel] Colore dei caratteri (font)

Postdi Anthony47 » 09/04/09 22:08

Prova questa:
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
For I = 1 To Len(Target)
Target.Characters(Start:=I, Length:=1).Font.ColorIndex = I + 2
Next I
End Sub

Pero' non puo' funzionare con i numeri, a meno che non vuoi tradurli in "stringa".
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: 13885
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] Colore dei caratteri (font)

Postdi biancocandido55 » 09/04/09 23:35

ciao Anthony47,
ti ringrazio della tua disponibilità,
così com' è la macro va bene , però pensavo se si poteva fare un "merge delle due macro", sarebbe perfetto.
Perchè la prima setta i fonti ai colori, ma se scrivo una parola il colore rimane quello della prima lettera che viene battuta, la tua macro fa si quello che mi serve ma usa la gamma dei colori in modo come dire "unidirezionale", parte dal rosso come prima lettera e cosi via con i colori successivi,
ti ringrazio come sempre, un abbraccio
ciao
bianco
biancocandido55
Utente Senior
 
Post: 305
Iscritto il: 03/03/06 10:15

Re: [excel] Colore dei caratteri (font)

Postdi Flash30005 » 10/04/09 00:47

Se non hai esigenza che ad ogni lettera corrisponda un colore potresti usare il codice di Anthony con questa semplice modifica
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
For I = 1 To Len(Target)
Rical:
ColVar = Int(Rnd() * 56) + 1
If ColVar = 2 Then GoTo Rical
Target.Characters(Start:=I, Length:=1).Font.ColorIndex = ColVar
Next I
End Sub


Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [excel] Colore dei caratteri (font)

Postdi Flash30005 » 10/04/09 01:56

Se invece vuoi attribuire un colore ad ogni carattere (a parità di carattere stesso colore)
allora puoi usare questa:
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
For I = 1 To Len(Target)
ColVar = 1
If Asc(Mid(Target, I, 1)) - 97 < 55 Then ColVar = Asc(Mid(Target, I, 1)) - 68        '<<< lettere a-z
If Asc(Mid(Target, I, 1)) - 65 < 30 Then ColVar = Asc(Mid(Target, I, 1)) - 62       '<<< lettere A-Z
If Asc(Mid(Target, I, 1)) - 48 < 10 Then ColVar = Asc(Mid(Target, I, 1)) - 2       '<<< numeri 0-9
Target.Characters(Start:=I, Length:=1).Font.ColorIndex = ColVar
Next I
End Sub


(questa non è casuale come la precedente)

Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [excel] Colore dei caratteri (font)

Postdi biancocandido55 » 10/04/09 07:07

Ciao ragazzi,
come sempre, io con le mie idee bislacche,
anche se penso che possono essere utili a qualcuno,
non mancherò mai di ringraziarvi.
Siete eccezionali.
un abbraccio
bianco
biancocandido55
Utente Senior
 
Post: 305
Iscritto il: 03/03/06 10:15

Re: [excel] Colore dei caratteri (font)

Postdi biancocandido55 » 10/04/09 07:09

dimenticavo, "vanno bene tutte"
ciao
bianco
biancocandido55
Utente Senior
 
Post: 305
Iscritto il: 03/03/06 10:15


Torna a Applicazioni Office Windows


Topic correlati a "[excel] Colore dei caratteri (font)":


Chi c’è in linea

Visitano il forum: raimea, wallace&gromit e 9 ospiti