| | Post: 16 | Registrato il: 08/07/2017
| Città: SUSEGANA | Età: 62 | Utente Junior | 2003 | | OFFLINE | |
|
14/10/2021 16:45 | |
Ciao a tutti, chiedo un aiuto… ho un file con diversi fogli, avrei la necessita, se possibile, di colorare in rosso la linguetta del foglio quando i valori di C6 e C8 all’interno dei vari fogli sono uguali. |
|
| | Post: 4.756 | Registrato il: 21/06/2013
| Città: NAPOLI | Età: 70 | Utente Master | Excel 365 | | OFFLINE |
|
14/10/2021 17:06 | |
Occorre usare il VBA
Allega file di esempio
Alfredo |
| | Post: 2.465 | Registrato il: 10/10/2013
| Città: VICENZA | Età: 69 | Utente Veteran | 365 | | OFFLINE |
|
14/10/2021 17:26 | |
ciao
in questo foglio di lavoro
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim ws As Worksheet
For n = 1 To Worksheets.Count
With Sheets(n)
If Cells(6, 3) = Cells(8, 3) Then
ActiveSheet.Tab.Color = 255
Else
ActiveSheet.Tab.Color = xlNone
End If
End With
Next
End Sub
se va bene qualche esperto la sistema impedendo che
se le celle sono vuote si colori di rosso |
| | Post: 4.758 | Registrato il: 21/06/2013
| Città: NAPOLI | Età: 70 | Utente Master | Excel 365 | | OFFLINE |
|
14/10/2021 17:32 | |
Federico460 a che serve la variabile ws se poi non la usi? 😂
Alfredo |
| | Post: 16 | Registrato il: 08/07/2017
| Città: SUSEGANA | Età: 62 | Utente Junior | 2003 | | OFFLINE | |
|
14/10/2021 17:35 | |
Allego il file. In questo esempio la linguetta del foglio 1 dovrebbe colorarsi di rosso. Le altre si colorano quando il n di C6 è uguale a C8. |
| | Post: 92 | Registrato il: 02/04/2018
| Città: PESCARA | Età: 75 | Utente Junior | EXCEL 2016 - SPREAD32 | | OFFLINE |
|
14/10/2021 17:47 | |
federico460, 14/10/2021 17:26:
.... impedendo che
se le celle sono vuote si colori di rosso
potrebbe andar bene ?
If Cells(6, 3) = Cells(8, 3) And Cells(6, 3) <> 0 Then
non ho saputo quotare, sorry
LEO
https://t.me/LordBrum |
| | Post: 17 | Registrato il: 08/07/2017
| Città: SUSEGANA | Età: 62 | Utente Junior | 2003 | | OFFLINE | |
|
14/10/2021 17:57 | |
In realtà quando il foglio è vuoto, cioè non ci sono numeri da B16 in giù, nelle celle C6 C8 c'è lo zero in quanto riportano una formula di subtotale |
| | Post: 2.466 | Registrato il: 10/10/2013
| Città: VICENZA | Età: 69 | Utente Veteran | 365 | | OFFLINE |
|
14/10/2021 18:00 | |
ciao
Al
ho eliminati tutto
dalla macro che ho variato
e l'ho dimenticato😀 |
| | Post: 2.467 | Registrato il: 10/10/2013
| Città: VICENZA | Età: 69 | Utente Veteran | 365 | | OFFLINE |
|
14/10/2021 18:11 | |
ciao
eccola
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
For n = 1 To Worksheets.Count
With Sheets(n)
If Cells(6, 3) = Cells(8, 3) And Cells(6, 3) > 0 Then
ActiveSheet.Tab.Color = 255
Else
ActiveSheet.Tab.Color = xlNone
End If
End With
Next
End Sub
in "QUESTA CARTELLA DI LAVORO"
o
thisworkbook |
| | Post: 18 | Registrato il: 08/07/2017
| Città: SUSEGANA | Età: 62 | Utente Junior | 2003 | | OFFLINE | |
|
14/10/2021 19:22 | |
Mi da: errore di compilazione Variabile non definita |
| | Post: 2.468 | Registrato il: 10/10/2013
| Città: VICENZA | Età: 69 | Utente Veteran | 365 | | OFFLINE |
|
14/10/2021 19:49 | |
leva option explicit
da sopra |
| | Post: 4.759 | Registrato il: 21/06/2013
| Città: NAPOLI | Età: 70 | Utente Master | Excel 365 | | OFFLINE |
|
14/10/2021 20:08 | |
Option Explicit non va tolto mai.
Le variabili vanno dichiarate sempre.
Alfredo |
| | Post: 2.469 | Registrato il: 10/10/2013
| Città: VICENZA | Età: 69 | Utente Veteran | 365 | | OFFLINE |
|
14/10/2021 20:26 | |
ciao Al
allora mettile 😆
lavoro tuo
non per me😛 |
| | Post: 4.760 | Registrato il: 21/06/2013
| Città: NAPOLI | Età: 70 | Utente Master | Excel 365 | | OFFLINE |
|
14/10/2021 22:13 | |
La dichiarazione delle variabili è un argomento che devono conoscere tutti
https://www.excelpertutti.com/variabili-excel-tipi-di-variabili-vba/
😀
Alfredo |
| | Post: 2.470 | Registrato il: 10/10/2013
| Città: VICENZA | Età: 69 | Utente Veteran | 365 | | OFFLINE |
|
14/10/2021 22:36 | |
ciao
Option Explicit
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim n As Integer
For n = 1 To Worksheets.Count
With Sheets(n)
If Cells(6, 3) = Cells(8, 3) And Cells(6, 3) > 0 Then
ActiveSheet.Tab.Color = 255
Else
ActiveSheet.Tab.Color = xlNone
End If
End With
Next
End Sub
tanto tu poi metti long
😂
sfaticato di un Al
1 variabile solo e non la metti [Modificato da federico460 14/10/2021 22:37] |
| | Post: 4.761 | Registrato il: 21/06/2013
| Città: NAPOLI | Età: 70 | Utente Master | Excel 365 | | OFFLINE |
|
14/10/2021 22:55 | |
No Integer va bene e ti chiedo di spiegarmi il perchè 😂
Quanto all’essere sfaticato il mio l’ho fatto devono essere gli utenti a lavorare 😂
Alfredo |
| | Post: 19 | Registrato il: 08/07/2017
| Città: SUSEGANA | Età: 62 | Utente Junior | 2003 | | OFFLINE | |
|
15/10/2021 10:04 | |
Ottimo ! Grazie a tutti |
| | Post: 42 | Registrato il: 18/10/2016
| Città: COSENZA | Età: 65 | Utente Junior | Excel 2007 | | OFFLINE | |
|
19/10/2021 19:08 | |
Colorare linguetta di rosso Buona sera,
credo che la macro che ho visto vada corretta :
"Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
For n = 1 To Worksheets.Count
With Sheets(n)
If .Cells(6, 3) = .Cells(8, 3) And .Cells(6, 3) > 0 Then
ActiveSheet.Tab.Color = 255
Else
ActiveSheet.Tab.Color = xlNone
End If
End With
Next
End Sub"
In pratica, quando si lavora con With/End With, gli oggetti all'interno vanno preceduti dal punto, altrimenti si agisce sul foglio corrente.
Le celle 6,3 e 8,3 sono relative al foglio (n), e non al foglio corrente.
Altrimenti non serve "spazzolare" tutti i fogli della cartella.
Alla fine la macro originale agiva sempre sul foglio attivo.......
Saluti
Dario
|
| | Post: 20 | Registrato il: 08/07/2017
| Città: SUSEGANA | Età: 62 | Utente Junior | 2003 | | OFFLINE | |
|
20/10/2021 15:45 | |
Ciao darionardella, non mi funziona la tua versione |
| | Post: 1.444 | Registrato il: 27/06/2011
| Utente Veteran | excel 2007 | | OFFLINE |
|
20/10/2021 17:39 | |
De Martin.PAOLO, 20/10/2021 15:45:
Ciao darionardella, non mi funziona la tua versione
ciao,
non credi che per ottenere un riscontro, sia utile a Dario (ciao ),
allegare la tua versione non funzionante?
Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
Excel 2007 forse anche 2013 ... 2021 ... 365 e future... |
| | Post: 43 | Registrato il: 18/10/2016
| Città: COSENZA | Età: 65 | Utente Junior | Excel 2007 | | OFFLINE | |
|
20/10/2021 19:27 | |
Attendo la versione x verificare il problema. |
| | Post: 21 | Registrato il: 08/07/2017
| Città: SUSEGANA | Età: 62 | Utente Junior | 2003 | | OFFLINE | |
|
20/10/2021 19:27 | |
Il file si trova già in allegato in uno dei messaggi sopra |
| | Post: 22 | Registrato il: 08/07/2017
| Città: SUSEGANA | Età: 62 | Utente Junior | 2003 | | OFFLINE | |
|
20/10/2021 19:30 | |
darionardella, 20/10/2021 19:27:
Attendo la versione x verificare il problema.
La versione è il 2003
|
| | Post: 44 | Registrato il: 18/10/2016
| Città: COSENZA | Età: 65 | Utente Junior | Excel 2007 | | OFFLINE | |
|
20/10/2021 19:36 | |
Intendevo la versione della macro che non funziona con il mio suggerimento.... |
| | Post: 23 | Registrato il: 08/07/2017
| Città: SUSEGANA | Età: 62 | Utente Junior | 2003 | | OFFLINE | |
|
21/10/2021 07:10 | |
darionardella, 20/10/2021 19:36:
Intendevo la versione della macro che non funziona con il mio suggerimento....
Non saprei dirti cosa non funzione, non mi da errore, ma non colora la linguetta
|
| | Post: 45 | Registrato il: 18/10/2016
| Città: COSENZA | Età: 65 | Utente Junior | Excel 2007 | | OFFLINE | |
|
21/10/2021 08:25 | |
Allega il file completo, e verifico.
Grazie |
| | Post: 24 | Registrato il: 08/07/2017
| Città: SUSEGANA | Età: 62 | Utente Junior | 2003 | | OFFLINE | |
|
21/10/2021 10:10 | |
darionardella, 21/10/2021 08:25:
Allega il file completo, e verifico.
Grazie
|
| | Post: 3.227 | Registrato il: 06/04/2013
| Utente Master | 2010 | | OFFLINE |
|
21/10/2021 10:31 | |
ciao
non ti funziona perchè in nessun foglio si verifica la condizione imposta, ovvero C6=C8 e C6 > 0.
Inltre quel codice ti va in errore perchè non hai dichiarano la variabile n (hai Option Explicit)....
saluti
Domenico
Win 10 - Excel 2016 |
| | Post: 25 | Registrato il: 08/07/2017
| Città: SUSEGANA | Età: 62 | Utente Junior | 2003 | | OFFLINE | |
|
21/10/2021 10:48 | |
De Martin.PAOLO, 21/10/2021 10:10:
Ciao, nel foglio 1 e 2 ci sono le condizioni per colorare la linguetta. Comunque lascia perdere, tengo la macro di
federico460 che funziona senza problemi |
| | Post: 3.228 | Registrato il: 06/04/2013
| Utente Master | 2010 | | OFFLINE |
|
21/10/2021 11:28 | |
ciao
io dico di no....(con tutto il rispetto per fede).....comunque contento tu....
Quel codice lavora solo sul foglio attivo, pertanto il loop tra tutti i fogli è inutile.
Quindi se sei in un foglio, modifichi qualcosa e si verificano le condizioni, solo il foglio dove sei colorerà il tab di rosso.
Pertanto se il tuo scopo è quello di colorare solo il tab del foglio attivo il loop è inutile, se invece lo scopo è: qualsiasi cambiamento in qualsiasi foglio deve verificare in tutti i fogli se le condizioni sono vere quel loop va fatto con le modifiche indicate da Nardella
saluti [Modificato da dodo47 21/10/2021 11:37] Domenico
Win 10 - Excel 2016 |
|
|