|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Jul 2008
Messaggi: 242
|
[excel] come creare un doppio SE
ciao a tutti, avrei il seguente problema: una pompa può essere accesa o spenta nel tempo. se è spenta la cella che contiene la variabile pompa (p)=0, altrimenti p=1.
la pompa attacca o stacca in funzione del livello dell'acqua di un serbatoio. io devo scrivere questa cosa: - se la pompa è spenta allora: accendi la pompa se il livello d'acqua nel sebatoio scende al livello di 57m, altrimenti resta spenta; -se la pompa è accesa allora= spegni la pompa se il livello d'acqua nel serbatoio aumenta di 65m, altrimenti resta accesa. potreste darmi una mano? grazie ![]() |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Mar 2001
Città: PV Milano Nord
Messaggi: 3851
|
il problema non mi pare risieda tanto nella definizione della funzione se
(per capirci sarebbe facile dire se(a1=0;se(b1<57;"accendi";"");se(b1>65;"spegni";"")) ) ma il problemino sta nel capire come vengono aggiornati questi dati... dato che non puoi cambiare direttamente il valore della cella che contiene lo stato della pompa bisognerebbe studiare qualcosa in vba, per esempio, che faccia il check al variare della cella che contiene il livello dell'acqua...
__________________
"W la foca, che dio la benedoca"
poteva risolvere tutto la sinistra negli anni in cui ha governato e non l'ha fatto. O sono incapaci o sta bene anche a "loro" cosi. L'una o l'altra inutile scandalizzarsi.[plutus] |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Jul 2008
Messaggi: 242
|
alla fine ho risolto, per fortuna. grazie comunque della risposta. molto gentile.
ciao! |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Mar 2001
Città: PV Milano Nord
Messaggi: 3851
|
Quote:
![]() Codice:
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$B$1" Then stato_pompa = Range("a1").Value livello_acqua = Range("b1").Value If stato_pompa = 0 Then If livello_acqua < 58 Then Range("a1").Value = 1 End If End If If stato_pompa = 1 Then If livello_acqua > 64 Then Range("a1").Value = 0 End If End If End If End Sub
__________________
"W la foca, che dio la benedoca"
poteva risolvere tutto la sinistra negli anni in cui ha governato e non l'ha fatto. O sono incapaci o sta bene anche a "loro" cosi. L'una o l'altra inutile scandalizzarsi.[plutus] Ultima modifica di zuper : 01-04-2011 alle 11:31. |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:36.