› Excel e gli applicativi Microsoft Office › vba if…then
Stai vedendo 8 articoli - dal 1 a 8 (di 8 totali)
-
AutoreArticoli
-
ciao ragazzi.mi piacerebbe risolvere un problemino. ho un file per sommare/sottrarre. nel range in esame, partendo da una cella piena, inserendo un valore non numerico, excel restituisce il valore che ha trovato. non esegue modifica. avrei bisogno che partendo da una cella vuota, inserendo un valore non numerico, excel mi lasci la cella vuota.grazie x l'aiutoCiaoSe ho capito cosa intendi, ho l'impressione che stai sbagliando approccio.In Excel una cella può contenere O un dato O una formula.Quando inserisci un valore (alfanumerico) la formula che avevi scritto viene cancellata e non c'è modo di lasciare la formula e la cella vuota.Si può fare con VBA.Ciao,Mariociao mariushai avuto modo di provare. c'è un modulo vba, se inserisco un valore non numero, su una cella piena, tutto ok. prova ad inserire "a" su una cella vuota. non si cancella più.grazie x la disponibilitàCiaoVediamo se ho capito: vuoi che se scrivi un dato alfabetico non lo prenda e la cella resti vuota; se invece inserisci un dato numerico deve restare.Se è così, prova con questa macro
Private Sub Worksheet_Change(ByVal Target As Range) Dim newval, oldval On Error Resume Next newval = Target.Value Application.EnableEvents = False If Not IsNumeric(Target.Value) Then Application.Undo oldval = Target.Value oldaddr = Target.Address Target.Value = oldval End If Application.EnableEvents = True End SubFai sapere. Ciao,Mariogrande mariusecco cosa mi serviva.If Not IsNumeric(Target.Value) Then Target.Value = "0"senza il tuo aiuto non ce l'avrei mai fatta.grazie mille.ciaoho un nuovo problemanon funziona più il trascinamento delle formule. cosa posso fare?ancora grazieCiaoCosa vuol dire "Non funziona il trascinamento delle formule"?Non funziona la copia della cella dal quadratino in basso? Vedi se, per caso, hai il Calcolo su Manuale (da File > Opzioni > Formule) e mettilo su automatico.Un'altra cosa. Se la macro di cui sopra si è fermata (o l'hai fermata) a metà potrebbe non funzionare più nulla perchè c'è il codice Application.EnableEvents = True che non è stato eseguito. Se è questo il caso, crea una sub tipo questaSub ripristina()Application.EnableEvents = TrueEnd Sube lanciala. Tutto dovrebbe tornare a posto.Ciao,Mario -
AutoreArticoli
Stai vedendo 8 articoli - dal 1 a 8 (di 8 totali)
