kanizsa
26-09-2002, 20:25
In un foglio Excel ho la necessita' che venga effettuata la seguente procedura:
- AL VARIARE DI "A" (e' un dato dinamico che Excel riceve in DDE)
AZIONE
- CAMBIA LA CELLA "C" (cella Excel vuota, viene completata dal codice VBA)
IMMETTENDO IL VALORE CONTENUTO IN CELLA "B" (pure essa e' un dato dinamico, che Excel riceve in DDE)
Per fare questo "ultrabanale" passaggio di un solo dato da una cella all'altra in Excel, nel tempo ho adottato via via le seguenti soluzioni che si sono rivelate purtroppo portatrici di inconvenienti vari:
1) procedure senza VBA con la tecnica dei test condizionali basati sui riferimenti circolari
PRO Funziona veloce
CONTRO Non e' un bel esempio di programmazione ricorrere ai riferiemnti circolari
2) procedure con textbox
PRO Funziona, anche se abbastanza lenta
CONTRO Occorre immettere degli oggetti come le caselle di testo sul foglio Excel. Poco elegante
3) Procedura con la Worksheet Calculate.
PRO Funziona velocemente e non richiede oggetti sul foglio
CONTRO: e' una funzione delicata, basta mettere la funzione "data" sul foglio od altre ed il Calculate inevitabilmente parte in azione, mandando in loop il foglio Excel. E' quello che succede spesso quando si effettuano dei passaggi di task con Control-Tab ed il prg. Excel diventa bianco (cioe’ bloccato).
Talvolta devo aspettare anche un minuto prima di poter accedere al task di Excel
Chiedo cortesemente:
conoscete mica altre procedure o funzioni in ambiente Excel o VBA per svolgere questo banalissimo scopo di passare valori da una cella dinamica all'altra statica? (es. worksheet selection ? worksheet change, funzioni preparate dall’utente, altre ancora ?)
- AL VARIARE DI "A" (e' un dato dinamico che Excel riceve in DDE)
AZIONE
- CAMBIA LA CELLA "C" (cella Excel vuota, viene completata dal codice VBA)
IMMETTENDO IL VALORE CONTENUTO IN CELLA "B" (pure essa e' un dato dinamico, che Excel riceve in DDE)
Per fare questo "ultrabanale" passaggio di un solo dato da una cella all'altra in Excel, nel tempo ho adottato via via le seguenti soluzioni che si sono rivelate purtroppo portatrici di inconvenienti vari:
1) procedure senza VBA con la tecnica dei test condizionali basati sui riferimenti circolari
PRO Funziona veloce
CONTRO Non e' un bel esempio di programmazione ricorrere ai riferiemnti circolari
2) procedure con textbox
PRO Funziona, anche se abbastanza lenta
CONTRO Occorre immettere degli oggetti come le caselle di testo sul foglio Excel. Poco elegante
3) Procedura con la Worksheet Calculate.
PRO Funziona velocemente e non richiede oggetti sul foglio
CONTRO: e' una funzione delicata, basta mettere la funzione "data" sul foglio od altre ed il Calculate inevitabilmente parte in azione, mandando in loop il foglio Excel. E' quello che succede spesso quando si effettuano dei passaggi di task con Control-Tab ed il prg. Excel diventa bianco (cioe’ bloccato).
Talvolta devo aspettare anche un minuto prima di poter accedere al task di Excel
Chiedo cortesemente:
conoscete mica altre procedure o funzioni in ambiente Excel o VBA per svolgere questo banalissimo scopo di passare valori da una cella dinamica all'altra statica? (es. worksheet selection ? worksheet change, funzioni preparate dall’utente, altre ancora ?)