Condividi:        

excel 2003 riempire con colore righe vuote

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 2003 riempire con colore righe vuote

Postdi libraio » 04/07/19 21:00

So Windows 7Pro + Excel 2003

Ciao a tutti,
in una tabella pivot vorrei (ma non ci riesco...) riempire le righe vuote in colore giallo.
La tabella comprende le colonne A:F e si sviluppa su alcune centinaia di righe (di numero variabile)
Potete aiutarmi? :oops:
Grazie
libraio
Utente Senior
 
Post: 329
Iscritto il: 04/01/10 20:31

Sponsor
 

Re: excel 2003 riempire con colore righe vuote

Postdi Anthony47 » 05/07/19 02:02

Non ho la possibilita' di testare su XL2003, ma prova questa macro:
Codice: Seleziona tutto
Sub PvTYell()
Dim iRow As Long, eRow As Long, iCol As Long, eCol As Long
'
With ActiveSheet.PivotTables(1).TableRange1            '<<< Adatta l'Index, se hai piu' pivot sul foglio
    iRow = .Cells(1).Row
    eRow = .Cells(.Cells.Count).Row
    iCol = .Cells(1).Column
    eCol = .Cells(.Cells.Count).Column
End With
Range(Cells(iRow, iCol), Cells(eRow, eCol)).Interior.Color = xlNone
For i = iRow To eRow
    If Application.WorksheetFunction.CountBlank(Cells(i, iCol + 1).Resize(1, eCol - iCol)) = (eCol - iCol) Then
        Cells(i, iCol + 1).Resize(1, eCol - iCol).Interior.Color = RGB(255, 255, 0)
    End If
Next i
End Sub

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: excel 2003 riempire con colore righe vuote

Postdi klingklang » 05/07/19 10:17

Temo che almeno Application.WorksheetFunction.CountBlank non funzionerà (CONTA.VUOTE esiste dalla versione 2007)
Enrico
Windows 7 + Office 2016 64bit / Windows 10 + Office 365 32/64bit
Avatar utente
klingklang
Utente Junior
 
Post: 97
Iscritto il: 23/11/18 15:01
Località: San Giovanni in Persiceto

Re: excel 2003 riempire con colore righe vuote

Postdi Anthony47 » 05/07/19 15:35

Temo che almeno Application.WorksheetFunction.CountBlank non funzionerà (CONTA.VUOTE esiste dalla versione 2007)


La CountA c'era gia':
Codice: Seleziona tutto
    If Application.WorksheetFunction.CountA(Cells(i, iCol + 1).Resize(1, eCol - iCol)) = 0 Then

Ciao!
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: excel 2003 riempire con colore righe vuote

Postdi libraio » 05/07/19 19:31

Grazie Anthony,
la tua macro funziona in parte:
- vengolo colorate le righe vuote nelle celle comprese tra B:L, a me servono le celle comprese tra A:F
- le righe occupate da testo (che dovrebbero rimanere bianco neutro), vengono oolorate in verche chiaro
... Risolvibile?...
Un cordiale saluto
libraio
libraio
Utente Senior
 
Post: 329
Iscritto il: 04/01/10 20:31

Re: excel 2003 riempire con colore righe vuote

Postdi Anthony47 » 05/07/19 23:35

Allora serve vedere la tua pivot, per capire come mai non leggo correttamente le colonne e da dove sbuca quel "verdino" (visto che l'unico colore che la macro applica e' un RGB(255,255,0)
Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: excel 2003 riempire con colore righe vuote

Postdi libraio » 06/07/19 13:00

Ecco la pivot
https://we.tl/t-OL1B1rVr4Y
Grazie
libraio
Utente Senior
 
Post: 329
Iscritto il: 04/01/10 20:31

Re: excel 2003 riempire con colore righe vuote

Postdi Anthony47 » 06/07/19 22:28

Da quel che vedo la tabella pivot si espande fino a colonna L; mentre colonna A l'avevo volutamente esclusa perche' pensavo contenesse una etichetta.
Per fermarsi alle sole colonne che hanno in riga 4 una intestazione bisogna modificare un paio di cose; la nuova macro:
Codice: Seleziona tutto
Sub PvTYell2()
Dim iRow As Long, eRow As Long, iCol As Long, eCol As Long
'
With ActiveSheet.PivotTables(1).TableRange1            '<<< Adatta l'Index, se hai piu' pivot sul foglio
    iRow = .Cells(1).Row
    eRow = .Cells(.Cells.Count).Row
    iCol = .Cells(1).Column
    If Cells(iRow, iCol) = "" Then                      'Aggiunte, da qui
        iRow = Cells(iRow, iCol).End(xlDown).Row
    End If
    eCol = Cells(iRow, iCol).End(xlToRight).Column
'    eCol = .Cells(.Cells.Count).Column                 'Eliminata
End With
Range(Cells(iRow, iCol), Cells(eRow, eCol)).Interior.Color = xlNone
For i = iRow To eRow
    If Application.WorksheetFunction.CountA(Cells(i, iCol + 1).Resize(1, eCol - iCol)) = 0 Then
        Cells(i, iCol + 0).Resize(1, eCol - iCol + 1).Interior.Color = RGB(255, 255, 0)     'Modificata
    End If
Next i
End Sub

Le modifiche sono segnalate.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: excel 2003 riempire con colore righe vuote

Postdi libraio » 07/07/19 14:39

Ho provato la macro corretta,
ma riempie ancora le celle con un colore non meglio definibile, anzichè lasciarle neutre.
Non so se rivolgermi ad un Ghostbuster...
Puoi trovare la tabella pivot con la tua ultima macro e, soprattutto, verificare il risultato, qui:

https://we.tl/t-lIvhWLXh2Q
(prima di applicare la macro)

https://we.tl/t-sSPmovgSau
(macro applicata)

Grazie
libraio
Utente Senior
 
Post: 329
Iscritto il: 04/01/10 20:31

Re: excel 2003 riempire con colore righe vuote

Postdi Anthony47 » 07/07/19 20:54

Ecco come a me si presenta la tabella dopo che eseguo la PvtYell2 (sia sul file A che sul file B):
Immagine

Ma non avevo dubbi, visto che la macro applica solo RGB(255,255,0)=Giallo.
Il "verdino" che si vede sul tuo file sara' applicato da altre impostazioni.

Mi viene il dubbio che i tuoi fogli abbiano impostato di default il colore di sfondo Verdino, e la mia istruzione Range(Cells(iRow, iCol), Cells(eRow, eCol)).Interior.Color = xlNone rimuove il il colore corrente e visualizza lo sfondo di default; prova a cambiarla in
Codice: Seleziona tutto
Range(Cells(iRow, iCol), Cells(eRow, eCol)).Interior.Color = RGB(255, 255, 255)


Se non risolve, devi indagare sulle tue impostazioni; puoi condividere un file dimostrativo, anche ridotto (non limitato al foglio con la pivot)?

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: excel 2003 riempire con colore righe vuote

Postdi libraio » 08/07/19 11:21

Corretta secondo tue indicazioni.
PERFETTA.
Grazie Anthony
libraio
Utente Senior
 
Post: 329
Iscritto il: 04/01/10 20:31


Torna a Applicazioni Office Windows


Topic correlati a "excel 2003 riempire con colore righe vuote":


Chi c’è in linea

Visitano il forum: Nessuno e 34 ospiti