Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

[excel] copiare colore cella in altra cella

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] copiare colore cella in altra cella

Postdi Bolter » 22/12/09 02:06

ciao a tutti
io vorrei copiare il colore di sfondo di una cella in un'altra
ossia in base al colore di una cella (che è poi nella stessa riga ma in colonna differente) un'altra cella mi prende quello stesso colore di sfondo.

io ho provato così ma nulla


Codice: Seleziona tutto
Function colore(InRange As Range, _
OutRange As Range)
        If InRange.Interior.ColorIndex = 3 Then
            OutRange.Interior.ColorIndex = 3
        Else
            OutRange.Interior.ColorIndex = 4
        End If
End Function


Avete qualche idea?
Bolter
Utente Junior
 
Post: 31
Iscritto il: 28/09/09 15:13

Sponsor
 

Re: [excel] copiare colore cella in altra cella

Postdi Anthony47 » 22/12/09 15:27

Una udf non puo' formattare il foglio di lavoro. Per quello che chiedi potresti valutare una macro di evento, tenendo presente che una modifica di formattazione non provoca un Change, come pure che non si riesce (se non con procedure alquanto complicate) a intercettare il colore assegnato tramite formattazione condizionale.
Vedi se queste modalita' sono applicabili al tio bisogno, e posta ancora se serve un aiuto ulteriore.

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: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] copiare colore cella in altra cella

Postdi Bolter » 22/12/09 17:51

Ciao grazie di tutto

Con la formattazione condizionale poi avrei dei problemi con altre macro/function

E se volessi per esempio, nello stesso momento in cui cambio sfondo a una cella (manualmente) che un'altra diventi anch'essa dello stesso colore. Ossia contestualmente alla mia modifica.
EX.
A1 (seleziono il colore di sfondo)
A2 (mi diventa dello stesso colore senza che debba farlo io manualmente)

ricadiamo sempre nei casi che tu prima mi hai elencato?

grazie mille ciao
Bolter
Utente Junior
 
Post: 31
Iscritto il: 28/09/09 15:13

Re: [excel] copiare colore cella in altra cella

Postdi Flash30005 » 22/12/09 21:20

Forse intendevi dire se A1 ha un colore lo stesso colore lo deve avere B1
Se è così con questa macro lo potrai fare (inserire il codice nel foglio e non nel modulo)
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
CheckArea = "A1:A1000"
If Application.Intersect(Target, Range(CheckArea)) Is Nothing Then Exit Sub
If ActiveCell.Offset(-1, 0).Interior.ColorIndex <> xlNone Then
ActiveCell.Offset(-1, 0).Copy
ActiveCell.Offset(-1, 1).PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
    ActiveCell.Offset(1, -1).Select
End If
End Sub

a patto che scrivi nella cella della colonna A (mentre scrivi puoi dare il colore di fondo contemporaneamente) all'uscita la cella corrispondente della colonna B si colorerà come la cella in A

Se invece i dati sono già scritti si può procedere con una "scansione" in select di tutte le celle in A ... (da fare)

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: [excel] copiare colore cella in altra cella

Postdi Bolter » 24/12/09 03:38

Ciao grazie mille per l'aiuto
sono ignorante in materia quindi iil codice ch emi hai dato funzionerà ma io non riesco :oops:

- nella check area devo selezionare la colonna che voglio prenda il colore (colonna B) o quello che lo determina (colonna A)?
- scrivere e selezionare contemporaneamente colore testo e sfondo... forse non capisco bene


La copia l'ho fatta nel foglio e non nel modulo... quindi questo dovrebbe essere giusto :lol:

Ad esempio
Codice: Seleziona tutto
If ActiveCell.Offset(-1, 0)
-1 e 0 indicano colonna e riga ove prendere o dare il colore di sfondo?

Scusami ma sono proprio un principiante

grazie ancora ciao
Bolter
Utente Junior
 
Post: 31
Iscritto il: 28/09/09 15:13

Re: [excel] copiare colore cella in altra cella

Postdi Bolter » 24/12/09 03:51

ciao ho avuto un'illuminazione è ora funziona!!! :D

se hai ancora un pelo di volgia/tempo vorrei chiederti se è possibile (evitando la formattazione condizionale) fare in modo che la cella prenda un determinato colore di sfondo in base a cosa scrivo

ad esempio
se scrivo A --> diventi di colore rosso
se scrivo B --> diventi di colore giallo


grazie ancora
Bolter
Utente Junior
 
Post: 31
Iscritto il: 28/09/09 15:13

Re: [excel] copiare colore cella in altra cella

Postdi Bolter » 24/12/09 03:55

aggiunta:
vi è anche un problema per quanto riguarda la formattazione...
purtroppo non si limita al solo colore di sfondo, ma anche al numero, carattere, bordi, etc
Bolter
Utente Junior
 
Post: 31
Iscritto il: 28/09/09 15:13

Re: [excel] copiare colore cella in altra cella

Postdi Anthony47 » 24/12/09 11:13

C' e' un motivo per cui non vuoi usare la formattazione condizionale?

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: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "[excel] copiare colore cella in altra cella":


Chi c’è in linea

Visitano il forum: Nessuno e 18 ospiti