Hardware Upgrade Forum

Hardware Upgrade Forum (https://www.hwupgrade.it/forum/index.php)
-   Programmi e Utility (https://www.hwupgrade.it/forum/forumdisplay.php?f=37)
-   -   EXCEL 2003: far lampeggiare una cella (https://www.hwupgrade.it/forum/showthread.php?t=1791304)


fmasta56 28-07-2008 17:26

EXCEL 2003: far lampeggiare una cella
 
Qualcuno sa se è possibile far lampeggiare una cella in funzione di un'altra in Excel 2003? Mi spiego: vorrei che, se la cella A1 contiene un numero qualsiasi, la cella E1 deve lampeggiare per indicarmi che devo inserire il dato richiesto (e così anche la cella F1). E' possibile farlo?

JamalWallas 28-07-2008 17:59

Non è semplice, bisogna scrivere un po' di codice in VB, cerca su google " cell blink excel " e vedrai che salta fuori qualcosa di interessante :)

zuper 28-07-2008 19:38

mi sembra una cosa davvero inutile :D:D

falla colorare e basta!!

fmasta56 29-07-2008 07:34

Quote:

Originariamente inviato da zuper (Messaggio 23504130)
mi sembra una cosa davvero inutile :D:D

falla colorare e basta!!

E' un foglio molto complesso, dove la formattazione condizionale è già applicata a molte altre celle (che, appunto, cambiano colore)...se quelle due lampeggiassero, attirerebbero subito l'attenzione! Mi sa che tengo tutto così e ci rinuncio (codice VBA? Troppo complesso...!). :mc: :mc: :muro:

zuper 29-07-2008 08:41

Quote:

Originariamente inviato da fmasta56 (Messaggio 23507508)
E' un foglio molto complesso, dove la formattazione condizionale è già applicata a molte altre celle (che, appunto, cambiano colore)...se quelle due lampeggiassero, attirerebbero subito l'attenzione! Mi sa che tengo tutto così e ci rinuncio (codice VBA? Troppo complesso...!). :mc: :mc: :muro:

no, la cosa è fattibile abbastanza semplicemente

http://en.allexperts.com/q/Excel-105...ng-results.htm

dai un occhio qui e ce la fai in un minuto....l'ho appena provato,

basta che setti nella prima parte il RANGE corretto e nell'altra parte il ColorIndex che ti piace

http://www.mvps.org/dmcritchie/excel/colors.htm

alla fine "riavvia" il foglio

fmasta56 29-07-2008 09:15

Quote:

Originariamente inviato da zuper (Messaggio 23508103)
no, la cosa è fattibile abbastanza semplicemente

http://en.allexperts.com/q/Excel-105...ng-results.htm

dai un occhio qui e ce la fai in un minuto....l'ho appena provato,

basta che setti nella prima parte il RANGE corretto e nell'altra parte il ColorIndex che ti piace

http://www.mvps.org/dmcritchie/excel/colors.htm

alla fine "riavvia" il foglio

Scusa l'ignoranza, ma nel link che mi hai dato dice:
I would like to have my formula (blink or flash the results. Example:
Cell A8: Size of rope eye Cell B8:key in size.
Then at Cell B10:
+IF(AND(B8=" "),"SIZE OF ROPE EYE CANNOT BE BLANK"," ")

If cell B8 is blank, I would like SIZE OF ROPE EYE CANNOT BE BLANK To blink or flash in cell B10.
Non ho una grande dimestichezza con l'inglese, ma copiando la formula in una cella mi da un errore di formula, come è ovvio: come devo tradurla in italiano?
E' sicuramente una formula del tipo =SE(....) ma non l'ho trovata tra quelle precomposte...

zuper 29-07-2008 10:57

Quote:

Originariamente inviato da fmasta56 (Messaggio 23508532)
Scusa l'ignoranza, ma nel link che mi hai dato dice:
I would like to have my formula (blink or flash the results. Example:
Cell A8: Size of rope eye Cell B8:key in size.
Then at Cell B10:
+IF(AND(B8=" "),"SIZE OF ROPE EYE CANNOT BE BLANK"," ")

If cell B8 is blank, I would like SIZE OF ROPE EYE CANNOT BE BLANK To blink or flash in cell B10.
Non ho una grande dimestichezza con l'inglese, ma copiando la formula in una cella mi da un errore di formula, come è ovvio: come devo tradurla in italiano?
E' sicuramente una formula del tipo =SE(....) ma non l'ho trovata tra quelle precomposte...

sono 2 cose separate...

nella cella b8 ci devi mettere qualsiasi formula vuoi che ti dia un risultato diverso da "" in questo caso...

e poi c'è tutta la funzione che gestisce il blink della cella b10...

la funzione per la cella b8 devi metterla tu...ma anche se inserisci un numero a manina la cella b10 smette di lampeggiare...

capito?

fmasta56 29-07-2008 11:35

Quote:

Originariamente inviato da zuper (Messaggio 23510090)
sono 2 cose separate...

nella cella b8 ci devi mettere qualsiasi formula vuoi che ti dia un risultato diverso da "" in questo caso...

e poi c'è tutta la funzione che gestisce il blink della cella b10...

la funzione per la cella b8 devi metterla tu...ma anche se inserisci un numero a manina la cella b10 smette di lampeggiare...

capito?

Non proprio...nella cella B8 non metto nessuna formula, per il momento, ma inserisco un dato manualmente. Quella che non capisco, e non funziona copiandola, è la formula da mettere in B10. Io ho provato con
=SE(AND(B8>0),"SIZE OF ROPE EYE CANNOT BE BLANK"," ") ma non va (secondo me va tradotta in italiano, ma non so che significa quella frase lì)

zuper 29-07-2008 15:52

Quote:

Originariamente inviato da fmasta56 (Messaggio 23510720)
Non proprio...nella cella B8 non metto nessuna formula, per il momento, ma inserisco un dato manualmente. Quella che non capisco, e non funziona copiandola, è la formula da mettere in B10. Io ho provato con
=SE(AND(B8>0),"SIZE OF ROPE EYE CANNOT BE BLANK"," ") ma non va (secondo me va tradotta in italiano, ma non so che significa quella frase lì)

in b10 non devi mettere nulla :D

fmasta56 29-07-2008 16:25

Quote:

Originariamente inviato da zuper (Messaggio 23514577)
in b10 non devi mettere nulla :D

Quindi, non funziona...

zuper 29-07-2008 16:59

Quote:

Originariamente inviato da fmasta56 (Messaggio 23514963)
Quindi, non funziona...

riesci a postare il foglio?

fmasta56 29-07-2008 17:04

Quote:

Originariamente inviato da zuper (Messaggio 23515381)
riesci a postare il foglio?

Credo di aver capito il problema: non avevo visto la risposta sotto nel link che avevi scritto! Però quel codice VBA non so proprio dove metterlo...non conosco Excel a quel punto (e, giusto per farti contento, non ho mai adoperato nemmeno le macro...!). Se vuoi posso postare una parte del foglio, tutto sarebbe troppo lungo...ma come si fa?

zuper 29-07-2008 17:06

Quote:

Originariamente inviato da fmasta56 (Messaggio 23515433)
Credo di aver capito il problema: non avevo visto la risposta sotto nel link che avevi scritto! Però quel codice VBA non so proprio dove metterlo...non conosco Excel a quel punto (e, giusto per farti contento, non ho mai adoperato nemmeno le macro...!). Se vuoi posso postare una parte del foglio, tutto sarebbe troppo lungo...ma come si fa?

tasto destro sulla linguetta del foglio sotto -> codice e incolli questo
Codice:

Private Sub Worksheet_Calculate()
  If Range("B8").Value = "" Then
      Blink "B10"
  Else
      Range("B10").Interior.ColorIndex = 0
  End If
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
  Application.Run Me.CodeName & ".Worksheet_Calculate"
End Sub

poi fai inserisci modulo e incolli questo
Codice:

Sub Blink(cell As String)
  If Range(cell).Interior.ColorIndex = 6 Then
      Range(cell).Interior.ColorIndex = 0
  Else
      Range(cell).Interior.ColorIndex = 6
  End If
  Application.OnTime Now + 1 / 86400, "doagain"
End Sub
Sub DoAgain()
  Application.Run Sheets("Sheet1").CodeName & ".Worksheet_Calculate"
End Sub


fmasta56 29-07-2008 17:15

Ho fatto come dici (ma non vorrei crearti disturbo, sta diventando una cosa complicata), incollando i due codici dove dici: e ora? Ho salvato il file come CARTEL3, ma qualsiasi dato metto in B8, B10 resta vuota e non lampeggia...

zuper 29-07-2008 17:17

Quote:

Originariamente inviato da fmasta56 (Messaggio 23515577)
Ho fatto come dici (ma non vorrei crearti disturbo, sta diventando una cosa complicata), incollando i due codici dove dici: e ora? Ho salvato il file come CARTEL3, ma qualsiasi dato metto in B8, B10 resta vuota e non lampeggia...

hai chiuso e riaperto il foglio?

prova magari a farlo su un foglio vuoto prima ;)

fmasta56 29-07-2008 17:25

Quote:

Originariamente inviato da zuper (Messaggio 23515604)
hai chiuso e riaperto il foglio?

prova magari a farlo su un foglio vuoto prima ;)

Sì, sto lavorando su una nuova cartella vuota: dopo aver incollato i due codici, chiudo tutto (mi dice di salvare CARTEL4 e dico sì), poi riapro CARTEL4, metto un qualsiasi numero in B8 ma in B10 non accade niente (nemmeno inserendo un dato qualsiasi):mc:

zuper 30-07-2008 10:32

Quote:

Originariamente inviato da fmasta56 (Messaggio 23515698)
Sì, sto lavorando su una nuova cartella vuota: dopo aver incollato i due codici, chiudo tutto (mi dice di salvare CARTEL4 e dico sì), poi riapro CARTEL4, metto un qualsiasi numero in B8 ma in B10 non accade niente (nemmeno inserendo un dato qualsiasi):mc:

allega il foglio come zip

fmasta56 30-07-2008 10:51

1 Allegato(i)
Quote:

Originariamente inviato da zuper (Messaggio 23523286)
allega il foglio come zip

E' una cartella vuota, nuova, creata appositamente...te la allego (creata con Excel 2003).

zuper 30-07-2008 12:05

Quote:

Originariamente inviato da fmasta56 (Messaggio 23523582)
E' una cartella vuota, nuova, creata appositamente...te la allego (creata con Excel 2003).

è un problema di lingua nel senso che nella seconda parte di codice

Codice:

Sub Blink(cell As String)
  If Range(cell).Interior.ColorIndex = 6 Then
      Range(cell).Interior.ColorIndex = 0
  Else
      Range(cell).Interior.ColorIndex = 6
  End If
  Application.OnTime Now + 1 / 86400, "doagain"
End Sub
Sub DoAgain()
  Application.Run Sheets("Sheet1").CodeName & ".Worksheet_Calculate"
End Sub

fa riferimento al foglio di lavoro come Sheet1

nella tua cartella invece il foglio si chiama appunto Foglio1

Codice:

Sub Blink(cell As String)
  If Range(cell).Interior.ColorIndex = 6 Then
      Range(cell).Interior.ColorIndex = 0
  Else
      Range(cell).Interior.ColorIndex = 6
  End If
  Application.OnTime Now + 1 / 86400, "doagain"
End Sub
Sub DoAgain()
  Application.Run Sheets("Foglio1").CodeName & ".Worksheet_Calculate"
End Sub

banalmente modificalo così...salva...chiudi e riapri e vedi che funziona :)

fmasta56 30-07-2008 13:14

Applicato alla cartella vuota, con solo il FOGLIO 1, quasi funziona: però B10 lampeggia solamente se ha un dato dentro e se B8 è vuota (a me invece serve che lampeggi se B8 contiene un dato numerico e B10 è vuota, per richiamare l'attenzione sull'introduzione di una data in essa).
Ho poi provato a copiare con la medesima procedura che hai indicato, entrambi i codici nella cartella di lavoro che uso (che ha 10 fogli all'interno, nominati diversamente e con dati diversi, ma con più collegamenti tra alcuni di tali fogli): ho sostituito, come hai detto tu, il nome FOGLIO1 con quello del foglio dove applicare la macro, ma non funziona (anzi, mi da errore 400 di debug). Naturalmente, ho salvato la cartella con un nome diverso, per evitare di combinare guai sulla mia, ho salvato, chiuso tutto e riaperto...ma non va!:muro:


Tutti gli orari sono GMT +1. Ora sono le: 01:10.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Hardware Upgrade S.r.l.