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

controllare valore in una cella e se vero mettere zero

Ultimo Aggiornamento: 08/06/2019 12:13
Post: 1
Registrato il: 09/06/2017
Città: MILANO
Età: 51
Utente Junior
2016
OFFLINE
07/06/2019 21:02

buonasera
come da titolo ho la necessità di di controllare se in una cella c'è il valore #DIV/0! e se vero mettere il valore 0. ovviamente in vb. Ringrazio anticipatamente chi voglia aiutarmi.
Post: 33
Registrato il: 09/09/2017
Città: SASSARI
Età: 64
Utente Junior
2007
OFFLINE
07/06/2019 21:11

Buonasera,
sarebbe meglio vedere un file di esempio.
Essendoci un messaggio di errore, presumo che nella cella ci sia una formula.
Dei far precedere alla formula, cioè subito dopo =, il SE.ERRORE
=SE.ERRORE(la tua formula); 0 (se vuoi 0 al posto dell'errore) oppure "" (se vuoi che la cella resti bianca)
Saluti
Post: 1
Registrato il: 09/06/2017
Città: MILANO
Età: 51
Utente Junior
2016
OFFLINE
07/06/2019 22:11

buonasera l'errore è scritto come testo nella cella da modificare perchè è stato copiato come valore da un'altra cella (che non deve essere modificata).
Non conoscendo vb non riesco a fare il controllo in tale cella ed impostarla a 0 se trova il testo #DIV/0!. Spero di essermi spiegato meglio
grazie
Post: 2
Registrato il: 09/06/2017
Città: MILANO
Età: 51
Utente Junior
2016
OFFLINE
07/06/2019 22:19

ho provato con if then:

If Sheets("NOME FOGLIO").Cells(R, 12) = "#DIV/0!" Then Sheets("NOME FOGLIO").Cells(R, 20) = 0
ma non va
Post: 4.191
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Master
Excel 365
OFFLINE
07/06/2019 23:17

Ma stiamo parlando di formule o di VBA?

Se si usa il VBA c’è la funzione IsError.

If IsError(espressione) Then

Alfredo
Post: 3
Registrato il: 09/06/2017
Città: MILANO
Età: 51
Utente Junior
2016
OFFLINE
07/06/2019 23:42

vba devo semplicemnte controllare in una cella se c'è una determinata parola, e in caso affermativo cambiare il suo valore con 0.
esempio, se nella cella c'è scritto "ferie" allora devo modificarlo con 0 altrimenti lasciare invariato
[Modificato da GiolyGioly 07/06/2019 23:44]
Post: 1.262
Registrato il: 27/06/2011
Utente Veteran
excel 2007
OFFLINE
08/06/2019 09:19

ciao a tutti [SM=x423028]

ciao,
GiolyGioly, 6/7/2019 11:42 PM:

vba devo semplicemnte controllare in una cella se c'è una determinata parola, e in caso affermativo cambiare il suo valore con 0.
esempio, se nella cella c'è scritto "ferie" allora devo modificarlo con 0 altrimenti lasciare invariato



se questo è l'obiettivo,
prova a modificare questa

GiolyGioly, 6/7/2019 10:19 PM:

ho provato con if then:

If Sheets("NOME FOGLIO").Cells(R, 12) = "#DIV/0!" Then Sheets("NOME FOGLIO").Cells(R, 20) = 0
ma non va



con

vb
If Sheets("Foglio1").Cells(R, 12).Text = "#DIV/0!" Then Sheets("Foglio1").Cells(R, 12) = 0


ciao
Frank
[Modificato da tanimon 08/06/2019 10:42]







Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
Excel 2007 forse anche 2013 ... 2021 ... 365 e future...
Post: 2.251
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
08/06/2019 10:09

Ciao
anche se è stato effettuato un copia incolla valori, il #DIV/0! viene comunque con siderato il risultato di un errore e pertanto va trattato con SE.ERRORE nelle formule o IsError nel vba.

Non si riuscirà a trattare quella segnalazione come se fosse una stringa. Ovvero non funzionano le normali funzioni di testo, a meno che non si anteponga un apice.

saluti



[Modificato da dodo47 08/06/2019 10:53]
Domenico
Win 10 - Excel 2016
Post: 1.263
Registrato il: 27/06/2011
Utente Veteran
excel 2007
OFFLINE
08/06/2019 11:30

ciao Domenico,

dodo47, 6/8/2019 10:09 AM:

Ciao
anche se è stato effettuato un copia incolla valori, il #DIV/0! viene comunque con siderato il risultato di un errore e pertanto va trattato con SE.ERRORE nelle formule o IsError nel vba.

Non si riuscirà a trattare quella segnalazione come se fosse una stringa.




allego due files puoi darci un'occhiata e spiegarmi l'arcano?

Mi sembra funzioni sia che con IsError che senza
su entrambi i files [SM=x423059]

Ciao
Frank

edit: un file è un doppione
[Modificato da tanimon 08/06/2019 11:40]







Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
Excel 2007 forse anche 2013 ... 2021 ... 365 e future...
Post: 2.252
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
08/06/2019 11:56

ciao
si, sono le funzioni di testo che non vanno sia nelle formule che nel vba.
Il ns. amico parlava di #DIV/0! come il risultato di un copia/incolla valori. ma cià non inficia su quanto volevo dire.

Per esempio:
vb: left(cells(1,4),1) restituisce r-time 13: tipo non corrispondente
in entrambi i casi (cioè come risultato di formula o come risultato di copia/incolla valori)

formule: =SINISTRA(D1;1) restituisce #DIV/0! in entrambi i casi (cioè come risultato di formula o come risultato di copia/incolla valori)

Spero di aver chiarito quanto intendevo dire

cari saluti




[Modificato da dodo47 08/06/2019 12:00]
Domenico
Win 10 - Excel 2016
Post: 4
Registrato il: 09/06/2017
Città: MILANO
Età: 51
Utente Junior
2016
OFFLINE
08/06/2019 12:11

Buongiorno a tutti
e veramente grazie dell'aiuto,
non ho postato il file perche è molto grande e non è mio.
Aggiungo che alla fine ho risolto trattando la cella con la formula che conteneva l'errore , e poi modificando la cella che conteneva la copia come valore.
A presto Gioly
[Modificato da GiolyGioly 08/06/2019 12:15]
Post: 1.264
Registrato il: 27/06/2011
Utente Veteran
excel 2007
OFFLINE
08/06/2019 12:13

Re:
dodo47, 6/8/2019 11:56 AM:

ciao
si, sono le funzioni di testo che non vanno sia nelle formule che nel vba.
Il ns. amico parlava di #DIV/0! come il risultato di un copia/incolla valori. ma cià non inficia su quanto volevo dire.

Per esempio:
vb: left(cells(1,4),1) restituisce r-time 13: tipo non corrispondente
in entrambi i casi (cioè come risultato di formula o come risultato di copia/incolla valori)

formule: =SINISTRA(D1;1) restituisce #DIV/0! in entrambi i casi (cioè come risultato di formula o come risultato di copia/incolla valori)

Spero di aver chiarito quanto intendevo dire

cari saluti



ciao Domenico [SM=g27811] ,
grazie
Frank

[Modificato da tanimon 08/06/2019 12:14]







Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
Excel 2007 forse anche 2013 ... 2021 ... 365 e future...
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 11:46. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com