Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

formattazione condizionale cella non bloccata

Ultimo Aggiornamento: 05/12/2016 22:50
Post: 253
Registrato il: 08/01/2012
Città: MILANO
Età: 56
Utente Junior
excel 2000/2007
OFFLINE
03/12/2016 23:06

Ciao,
è possibile questa formattazione?

se una cella non è bloccata colorarla di giallo.

un grazie in anticipo.
patrik
------------------
excel 2003 / 20007
Post: 2.469
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Veteran
Excel 365
ONLINE
03/12/2016 23:23

Ciao

Credo si possa fare solo con il vba.

Se specifichi meglio le tue esigenze possiamo scriverla.

Alfredo
Post: 432
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
04/12/2016 00:40

Un saluto a tutti.

Prova ad utilizzare questa formula nella Formattazione Condizionale del range che intendi controllare ed applica il Riempimento giallo.
Usata per conto suo funziona, non l'ho mai applicata in combinazione ad altra FC:

=0=CELLA("proteggi"; A1)

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 253
Registrato il: 08/01/2012
Città: MILANO
Età: 56
Utente Junior
excel 2000/2007
OFFLINE
04/12/2016 13:12

Ciao rolli,
la formula funziona su excel 200/2003?
Grazie,
patrik
------------------
excel 2003 / 20007
Post: 435
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
04/12/2016 19:24

Dal manuale di Excel 2K10 sembra che sia una formula valida solo da Excel 2K7 in poi.
Credo che nelle versioni precedenti si debba usare quest'altra sintassi ma non ho un Excel vecchio per testare:

=0=INFO.CELLA(14; A1)

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 254
Registrato il: 08/01/2012
Città: MILANO
Età: 56
Utente Junior
excel 2000/2007
OFFLINE
04/12/2016 20:27

O.k. rollis, grazie.
Qualcuno con excel 2003 può testare la formula?
patrik
------------------
excel 2003 / 20007
Post: 255
Registrato il: 08/01/2012
Città: MILANO
Età: 56
Utente Junior
excel 2000/2007
OFFLINE
04/12/2016 20:32

Su excel 2007 non gira
------------------
excel 2003 / 20007
Post: 256
Registrato il: 08/01/2012
Città: MILANO
Età: 56
Utente Junior
excel 2000/2007
OFFLINE
04/12/2016 21:24

provare con una macro per excel 2000/2003?
patrik
------------------
excel 2003 / 20007
Post: 2.471
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Veteran
Excel 365
ONLINE
05/12/2016 10:47

Ciao Patrick

Una macro potrebbe essere questa

vb
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim cel As Range
Dim rng As Range
Set rng = Range("a1:d10")
For Each cel In rng
    If cel.Locked = True Then
        cel.Interior.ColorIndex = 6
    End If
Next cel
End Sub


Ma dovresti allegare un file di esempio che mostri su quale intervallo dover intervenire e dire come deve essere lanciata la macro.

Alfredo
Post: 760
Registrato il: 24/04/2004
Città: TERAMO
Età: 63
Utente Senior
2010
OFFLINE
05/12/2016 11:21

Salve a tutti.
Tornando un attimo indietro alla regola di formattazione condizionale, credo che nella formula non si debba indicare il range della cella

=CELLA("proteggi")=0


così dovrebbe funzionare
__________________________
[Excel 2010]
-Condividere la conoscenza aumenta la ricchezza di tutti.
-Dai ad un uomo un pesce e lo avrai sfamato per un giorno; insegnagli a pescare e lo avrai sfamato per sempre. (Confucio)
-Il sonno della ragione genera mostri. (Francisco Goya)
Post: 2.472
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Veteran
Excel 365
ONLINE
05/12/2016 11:48

Edit....
[Modificato da alfrimpa 05/12/2016 11:53]

Alfredo
Post: 2.473
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Veteran
Excel 365
ONLINE
05/12/2016 11:50

Si Marco confermo funziona perfettamente con Excel 2013 (non ho modo di provare con versioni precedenti).
[Modificato da alfrimpa 05/12/2016 11:54]

Alfredo
Post: 761
Registrato il: 24/04/2004
Città: TERAMO
Età: 63
Utente Senior
2010
OFFLINE
05/12/2016 12:05

PS:
Con Excel 2003 non funzionerà, purtroppo, visto che la funzione CELLA() è stata introdotta col 2007.
Riguardo al proposto utilizzo di INFO.CELLA, non so che dire, anche perchè sembra non sia una funzione nativa di Excel, ma una funzione macro di Excel4...
__________________________
[Excel 2010]
-Condividere la conoscenza aumenta la ricchezza di tutti.
-Dai ad un uomo un pesce e lo avrai sfamato per un giorno; insegnagli a pescare e lo avrai sfamato per sempre. (Confucio)
-Il sonno della ragione genera mostri. (Francisco Goya)
Post: 257
Registrato il: 08/01/2012
Città: MILANO
Età: 56
Utente Junior
excel 2000/2007
OFFLINE
05/12/2016 19:34

Salve a tutti,
la prima formula di rollis funziona su excel 2000/2003. [SM=g27811]
Ora nel workbook allegato il colore della formattazione non deve stamparsi.
Le macro del workbook, che serve a insirire dei dati in un modello precompilato, toglie i colori e bordi per poi stampare il tutto solo nelle celle predisposte.
Funziona tutto ma non risesco a togliere il colore della formattazione se il range è sbloccato.
Spero di esseremi spiegato.
Un saluto.
patrik
------------------
excel 2003 / 20007
Post: 258
Registrato il: 08/01/2012
Città: MILANO
Età: 56
Utente Junior
excel 2000/2007
OFFLINE
05/12/2016 21:51

Avrei in parte risolto creando con il registratore due macro, una per togliere l'altra per rimettere la formattazione:

Option Explicit

Sub togli_formattazione()

ActiveSheet.Unprotect "123456"

    Range("B7:K7").Select
    Cells.FormatConditions.Delete
    Range("B7:K31").Select
    Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
        Formula1:="=""CODICE NON PRESENTE"""
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Font
        .Bold = True
        .Italic = False
        .Color = -16776961
        .TintAndShade = 0
        .ThemeFont = xlThemeFontNone
    End With
    Selection.FormatConditions(1).StopIfTrue = True
    Range("B7:K31").Select
    Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
        "=0=CELLA(""proteggi""; B7)"
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Interior
        .Pattern = xlNone
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
    Selection.FormatConditions(1).StopIfTrue = True
    
    ActiveSheet.Protect "123456"
    
End Sub


Sub rimetti_formattazione()

ActiveSheet.Unprotect "123456"

    Range("B7:K7").Select
    Cells.FormatConditions.Delete
    Range("B7:K31").Select
    Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
        Formula1:="=""CODICE NON PRESENTE"""
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Font
        .Bold = True
        .Italic = False
        .Color = -16776961
        .TintAndShade = 0
        .ThemeFont = xlThemeFontNone
    End With
    Selection.FormatConditions(1).StopIfTrue = True
    Range("B7:K31").Select
    Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
        "=0=CELLA(""proteggi""; B7)"
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Interior
        .Pattern = xlSolid
        .PatternColorIndex = 0
        .ThemeColor = xlThemeColorAccent6
        .TintAndShade = 0.599963377788629
        .PatternTintAndShade = 0
    End With
    Selection.FormatConditions(1).StopIfTrue = True
    
   ActiveSheet.Protect "123456"
   
End Sub



solo che questo poi con excel 2000/2003 non girano, ma con excel 2007 si.
patrik
------------------
excel 2003 / 20007
Post: 436
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
05/12/2016 22:04

Mah, visto che usi questo codice:
With ActiveSheet.PageSetup
    .BlackAndWhite = True
End With
non dovresti aver bisogno di preoccuparti della colorazione delle celle, quel codice "obbliga" la stampante al solo Nero e Bianco.

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 259
Registrato il: 08/01/2012
Città: MILANO
Età: 56
Utente Junior
excel 2000/2007
OFFLINE
05/12/2016 22:15

Come ho impostato

        With ActiveSheet.PageSetup
.BlackAndWhite = False
End With

    
    ActiveWindow.SelectedSheets.PrintPreview
    'ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
           
      
        With ActiveSheet.PageSetup
.BlackAndWhite = True
End With


funziona bene con il pulsate nel foglio stampa solo i campi nelle celle bianche le altre nelle celle colorate non le stampa,
con il pulsante nella barra delle applicazioni stampa tutto e va bene.
con il pulsante nel foglio non deve stampare ilcolore della formattazione.
patrik
------------------
excel 2003 / 20007
Post: 437
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
05/12/2016 22:38

Ehm, ci vuole prima il True poi ... il False potrebbe anche non servire se non si fanno diverse stampe di seguito, ovvero, l'impostazione è temporanea per la stampante.

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 260
Registrato il: 08/01/2012
Città: MILANO
Età: 56
Utente Junior
excel 2000/2007
OFFLINE
05/12/2016 22:50

Se metto:

          With ActiveSheet.PageSetup
.BlackAndWhite = True
End With
    
    ActiveWindow.SelectedSheets.PrintPreview
    'ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
          
         With ActiveSheet.PageSetup
.BlackAndWhite = False
End With


poi mi stampa il contenuto delle celle "colorare"
patrik

[Modificato da patrik01 05/12/2016 22:51]
------------------
excel 2003 / 20007
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 18:41. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com