Posto di qua dato che in ML Libò l'argomento è fermo ma credo possa interessare
sia come soluzione che come eventuale stimolo :-)

Avevo postato questo:
%
Ci deve essere sicuramente una soluzione semplice ma proprio non mi viene...
E' possibile utilizzare un SE per riempire o una terza o una quarta cella?
In pratica, SBAGLIANDO la sintassi ma seguendo la logica mi occorrerebbe avere
una formula del tipo:
SE(A1>5; C1="XXXX";D1="XXXX") [leggendola: se a1 è maggiore di 5 allora metti 
in c1 le x, se no metti in d1 le x] (ovviamente il tutto, celle valori segni e 
compreso la formula SE, sono per pura indicazione del processo logico e non 
materialmente dei vincoli)
Esempio per spiegare cosa vorrei ottenere:
A1 è la cella discriminante (dove immettere il carattere che fa da 
spartiacque)
B1 continene il SE che deve spostare l'eventuale segno di spunta tra C1 e D1
C1 cella di destinazione
D1 cella di destinazione

Ovviamente le celle C1 e D1 non possono contenere ne formule ne altro dato che 
quella delle due non contenente le XXX dell'esempio dovrà essere scritta in 
seguito, con dati successivi.
Piccola altra complicazione: non posso usare la formattazione condizionata 
dato che questa diviene attiva DOPO che si è inserito qualcosa nella cella, 
mentre mi occorre che una delle due celle contenga il segno di eliminazione 
PRIMA di qualsivoglia digitazione. (Ovvero se ad esempio uso formattazione 
condizionata rosso e doppio barrato i caratteri del dato diverranno rossi e 
doppiobarrati DOPO che nella cella C1 sono stati scritti e si sia premuto invio 
ma a me occorre che quella cella sia interdetta o bloccata in qualche modo o 
già riempita con delle XXX PRIMA che perdano tempo a scriverci per poi 
accorgersi di aver sbagliato, cancellare e riscrivere nelle celle giuste)

Il SE computa il risultato nella sua cella, ovvero restituisce il risultato 
nella cella dov'è inserita la formula, come si fa a fargli puntare ad un'altra
casella, ovvero a fargli inserire i risultati in una casella terza?? 
% 

unica risposta
%
>Io farei così:
>In A1 metti il valore che vuoi, purché sia un numero.
>In C1 scrivi SE(A1>5;"x";"")
>In D1 scrivi SE(A1<=5;"x";"")
>Non userei B1.
>La doppia virgoletta ti lascia la cella vuota.

No, è già fatto a questa maniera e non va bene, le celle c1 e d1 DEVONO 
restare vuote dato che chi compilerà il modulo altrimenti sovrascriverà i SE 
che contengono!
Ho usato l'escamotage di fare il modulo originale in OTS (modello) in modo che 
aprano dei nuovi moduli di volta in volta, quindi riproducendo ogni volta la 
situazione originale, senza caselle con le formule sovrascritte ma non c'è 
verso, le ragazze
mi creano casini compilando i moduli successivi utilizzando il precedente già 
fatto anzichè aprendone uno nuovo e quindi nelle celle che contenevano il SE 
alla volta successiva non c'è piùla formula dato che sonos tati inseriti i dati 
e si scombina tutto il resto dei dati....

In pratica devo far compilare un elenco complesso e a seconda di cosa viene 
scritto in alcune determinate celle una serie di altre devono essere 
immediatamente riempite con delle X o interdette in modo da risultare A VISTA 
non scrivibili, mentre delle altre resteranno vuote quindi riempibili con i 
dati necessari. In questo modo prevengo gli errori e sopratutto non devo 
andarmi a ricontrollare tutti i sacrosanti dati uno per uno visto che sono una 
sfliza di valori e li sbagliano praticamente sempre...

Nel caso non se ne venga a capo con semplici formule proverò a farmi una macro 
ad hoc... anche se volevo evitare macro e sopratutto pensavo esistesse la 
possibilità di andare a modificare un valore in una cella terza anzichè per 
forza limitarsi alla combinazione cellaorigineformula=cellarisultatofinale:
tutte le formule restituiscono il controvalore nelle celle in cui sono 
scritte...
%

Ho risolto (per modo di dire) così: ho creato una serie di campi formattati 
con la barra formulario associando ad ognuno di questi la serie di macro 
necessarie a riempire o meno le celle finali.
Ma è un pasticcio e non mi piace come soluzione.
Quindi pongo un ulteriore questione: è possibile bloccare una cella 
nascondendola o comunque impedendone la scrittura se in una determinata altra 
avviene qualcosa?
Esempio:
A1 vuota
A2 vuota
A3 vuota
Scrivo 1 in A1 ed alla pressione del tasto invio il cursore si porta in A2
Scrivo 3 in A1 ed alla pressione del tasto invio il cursore si porta in A3 
saltando A2 dato che 3 è il numero scelto come discriminante.

Lo so che propongo cose di non semplice soluzione ma vedetela così: è un 
pungolo a sbirciare da nuovi punti di vista :-)

Grazie per la pazienza di aver letto sta lunghissima mail 
Angelo

---------------------------------------------------------------------
Per cancellarsi: [email protected]
Per informazioni: http://www.openoffice.org/it/
Per avviare una nuova discussione: [email protected]
Archivi: http://mail-archives.apache.org/mod_mbox/incubator-ooo-utenti-it

Rispondere a