Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

colorare lettere

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

colorare lettere

Postdi ROBI2224 » 26/01/11 17:14

ciao a tutti.ho 12 fogli mensili per la turnazione mensile di 20 colleghi.
vorrei far si che determinate lettere si colorassero ; es, m verde,p salmone,n blu ecc. come posso fare?
ROBI2224
Utente Junior
 
Post: 14
Iscritto il: 09/10/09 21:36

Sponsor
 

Re: colorare lettere

Postdi Flash30005 » 26/01/11 19:22

Questa potrebbe essere una macro

Codice: Seleziona tutto
Public Foglio As String
Sub ColoraCar()
Worksheets(Foglio).Select
Cells.Font.ColorIndex = xlAutomatic
Dim VettC(3) As String     '<<<< dimensionare vettore per in numero delle lettere
VettC(1) = "m"     '<<<<< assegnare al vettore la lettera
VettC(2) = "n"
VettC(3) = "p"
For NumCar = 1 To 3
Stc = VettC(NumCar)
Application.ScreenUpdating = False
Application.Calculation = xlManual
UR = Range("A" & Rows.Count).End(xlUp).Row
With Worksheets(Foglio).Range("A1:A" & UR)     '<<<< determinare l'area di ricerca
    Set C = .Find(Stc, LookIn:=xlValues, LookAt:=xlPart)
        If Not C Is Nothing Then
            firstAddress = C.Address
            C.Select
            Stringa = C.Value
            For CarT = 1 To Len(Stringa)
                CarC = Mid(Stringa, CarT, 1)
                Select Case CarC
                Case VettC(1)
                    ActiveCell.Characters(Start:=CarT, Length:=1).Font.ColorIndex = 4
                Case VettC(2)
                    ActiveCell.Characters(Start:=CarT, Length:=1).Font.ColorIndex = 5
                Case VettC(3)
                    ActiveCell.Characters(Start:=CarT, Length:=1).Font.ColorIndex = 46
                Case Else
                ActiveCell.Characters(Start:=CarT, Length:=1).Font.ColorIndex = xlAutomatic
            End Select
            Next CarT
        Do
        Set C = .FindNext(C)
            If firstAddress = C.Address Then Exit Do
            C.Select
            Stringa = C.Value
            For CarT = 1 To Len(Stringa)
                CarC = Mid(Stringa, CarT, 1)
                Select Case CarC
                Case VettC(1)
                    ActiveCell.Characters(Start:=CarT, Length:=1).Font.ColorIndex = 4
                Case VettC(2)
                    ActiveCell.Characters(Start:=CarT, Length:=1).Font.ColorIndex = 5
                Case VettC(3)
                    ActiveCell.Characters(Start:=CarT, Length:=1).Font.ColorIndex = 46
            Case Else
                    ActiveCell.Characters(Start:=CarT, Length:=1).Font.ColorIndex = xlAutomatic
            End Select
            Next CarT
            Loop While Not C Is Nothing And C.Address <> firstAddress
        End If
    End With
Next NumCar
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub


Se ti soddisfa e non ci saranno altri interventi la potrai far funzionare per tutti i fogli della cartella magari appena il foglio si attiva
Inserendo nel VBA di ogni foglio (non nel modulo) questo codice

Codice: Seleziona tutto
Private Sub Worksheet_Activate()
Foglio = Name
Call ColoraCar
End Sub


Fai sapere
Ciao

Modificato post da Flash ore 19:45 per implementarlo a tutti i fogli che si rendono attivi
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: colorare lettere

Postdi ROBI2224 » 27/01/11 10:51

perdonate l'indecenza ,ma come devo fare per inserire la macro ?
ROBI2224
Utente Junior
 
Post: 14
Iscritto il: 09/10/09 21:36

Re: colorare lettere

Postdi Flash30005 » 27/01/11 11:09

Copia il codice con l'apposito Tag "Seleziona Tutto" ( e copi)

Apri il tuo foglio di excel e premi i tasti ALT + F11

Vai sul Menu ->Inserisci -> Modulo
Incolli nella finestra di destra la prima macro che va nel modulo

Poi copi qui la seconda macro (quattro righe di codice)
Sulla parte sinistra del Vba avrai i tuoi fogli
ne selezioni uno alla volta e incolli nel codice del foglio la macro
lo farai per tutti i fogli che hai nella cartella

Se hai problemi scarica questo file

Fai sapere
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: colorare lettere

Postdi ROBI2224 » 27/01/11 11:22

le lettere le devo inserire nelle celle b10:af 42. con la tua macro mi si colora solo la cella a5. penso che debba determinare l'area di ricerca,o sbaglio?
ROBI2224
Utente Junior
 
Post: 14
Iscritto il: 09/10/09 21:36

Re: colorare lettere

Postdi Flash30005 » 27/01/11 11:35

Si!
Devi determinare l'area di ricerca
infatti nella macro c'è "evidenziata" la riga dove devi intervenire
Codice: Seleziona tutto
UR = Range("A" & Rows.Count).End(xlUp).Row  '<<<< qui metterai "B"
With Worksheets(Foglio).Range("A1:A" & UR)     '<<<< determinare l'area di ricerca "B10:AF" lasciando la variabile UR nel caso che le righe fossero più di 42 vengono calcolate


Fai sapere se ok
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: colorare lettere

Postdi ROBI2224 » 27/01/11 11:58

sto provando con il fileche mi hai mandato,ma mo da' errore di rune time 9 indice non incluso nell'intervallo. ti allego il mio e,puoi controllare se ho fatto tutto giusto?
http://rapidshare.com/files/444791729/T ... NTONIO.xls
ROBI2224
Utente Junior
 
Post: 14
Iscritto il: 09/10/09 21:36

Re: colorare lettere

Postdi Flash30005 » 27/01/11 12:42

La macro è giusta se adattata opportunatamente

ho inserito il codice solo su Gennaio
quindi ad ogni attivazione del foglio Gennaio la macro contenuta nel modulo2 si avvia
Se vuoi fare lo stesso per gli altri mesi
devi solo ricopiare il codice che si trova nel foglio gennaio e ripeterlo per tutti gli altri mesi

Fai sapere se questo file va bene

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: colorare lettere

Postdi ROBI2224 » 27/01/11 12:48

ok, ci provo.
grazie
ROBI2224
Utente Junior
 
Post: 14
Iscritto il: 09/10/09 21:36


Torna a Applicazioni Office Windows


Topic correlati a "colorare lettere":


Chi c’è in linea

Visitano il forum: Nessuno e 14 ospiti