Una macro, alla fine in base all'esito di elaborazioni precedenti,
apre un file excel
Workbooks.Open (RootProcedura & "fileda aprire.xls")
e si chiude.
L'operatore compila il filedaaprire.xls e lo salva (o l'abbandona).
Il capo (che ha sempre ragione) vorrebbe gestire l'operato
dell'operatore, cioè (e al momento) se compila il foglio o se lo
abbandona.
Pertanto bisognerebbe
- pausare la macro chiamante
alla chiusura del foglio chiamato
- vedere se è stato modificato e, diciamo
IF qualchecosa then
MSGBOX "Foglio salvato"
else
MSGBOX "Foglio abbandonato"
end if
Avete qualche idea?
Grazie a tutti
Ciao Pico1965.
> Una macro, alla fine in base all'esito di elaborazioni precedenti,
> apre un file excel
> Workbooks.Open (RootProcedura & "fileda aprire.xls")
> e si chiude.
> L'operatore compila il filedaaprire.xls e lo salva (o l'abbandona).
> Il capo (che ha sempre ragione)
Dalle mie parti si dice "a mati e paroni no se comanda". :D
> vorrebbe gestire l'operato
> dell'operatore, cioè (e al momento) se compila il foglio o se lo
> abbandona.
> Pertanto bisognerebbe
> - pausare la macro chiamante
> alla chiusura del foglio chiamato
> - vedere se è stato modificato e, diciamo
> IF qualchecosa then
> MSGBOX "Foglio salvato"
> else
> MSGBOX "Foglio abbandonato"
> end if
> Avete qualche idea?
Ciao Pico1965.
Se non vuoi mettere codice nella Cartella di lavoro chiamata allora la
Cartella di lavoro chiamante dovra' intercettare gli eventi di quella
chiamata. Potresti incominciare consultando la Guida alla pagina:
Utilizzo di eventi con l'oggetto Application
Poi se hai bisogno... fischia.
Non ci starebbe male nemmeno una ricerca con Google Groups nei post di
questo ng e parola chiave "WithEvents".
(Facci sapere se e eventualmente come hai risolto. Grazie!)
--
Maurizio Borrelli [Microsoft MVP - Excel]
http://www.riolab.org/
FIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIISCHIARE
Maurizio Borrelli ha scritto:
> Se non vuoi mettere codice nella Cartella di lavoro chiamata allora la
> Cartella di lavoro chiamante dovra' intercettare gli eventi di quella
> chiamata.
Si... penso che sia meglio seguire questa strada
P.S. Dimenticavo Excel2K
Ciao Pico1965.
> > Se non vuoi mettere codice nella Cartella di lavoro chiamata allora la
> > Cartella di lavoro chiamante dovra' intercettare gli eventi di quella
> > chiamata.
> Si... penso che sia meglio seguire questa strada
> P.S. Dimenticavo Excel2K
(Pure!)
> Grazie per l'interessamento ma, data l'urgenza, preferisco...
> FIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIISCHIARE
Benissimo! Siamo qui. Che ti serve? (Dato che hai fretta avrai
sicuramente gia' cercato in Google Groups, come ti indicavo. Cosa hai
trovato di utile?)
>Potresti incominciare consultando la Guida alla pagina:
> Utilizzo di eventi con l'oggetto Application
non mi sembra che la mia guida abbia pagine e se cerco
Utilizzo di eventi con l'oggetto Application
mi restituisce messaggi non pertinenti.
Resta quindi:
> Non ci starebbe male nemmeno una ricerca con Google Groups nei post di
> questo ng e parola chiave "WithEvents".
Ora... ti assicuro che a fronte del numero dei miei post, proprio
utilizzando la ricerca sul nsg e incrociandola con l'help e magari
qualche altra risorsa sul web sono riuscito molte volte a risolvere
"in proprio i miei problemi".
Le altre ho chiesto e quasi sempre mi avete aiutato.
La problematica che sottopongo alla Vostra attenzione è per me
(autodidatta che usa excel solo quando ne ha bisogno) nuova.
Fermare l'esecuzione di una macro in attesa che succeda qualcosa
altrove (la chiusura di un altro foglio di lavoro) e valutare cosa è
successo sul foglio oramai chiuso (se è stato modificato o no) è per
me (allo stato)... arabo.
E ti assicuro che per noi inesperti, andarsi a studiare soluzioni
confezionate per altri casi su materie per le quali l'help non è di
nessuno aiuto è ardua impresa.
In definitiva.
Se pensi che abbia posto il problema per avere "la pappa pronta" ne
hai facoltà... è legittimo.
E, visto la materia del contendere... penso che sia anche vero.
Se pensi che io possa imparare a fare quello che mi serve
copiaincollando codice criptico (per chi non l'ha creato). Ti chiedo
scusa... mi hai sopravalutato.
Se pensi che, con il tuo procedere, mi hai aiutato a risolvere il
problema ... ti sei sbagliato.
Vi saluto e vi ringrazio per l'attenzione.
Ciao Pico1965.
Molto, ma molto interessanti le cose che dici. E non scherzo affatto.
Perche' ritengo che base della soluzione dei propri problemi siano
proprio le cose seguenti:
- saper usare la Guida dell'applicazione.
- saper usare i motori di ricerca (Google Groups prima di tutto).
- saper usare i newsgroup.
Tu hai dimostrato di non sapere usare nessuna di queste cose ma non ci
sarebbe nulla di male in questo. Anche io, come suppongo tutti, prima di
imparare a usarle non le sapevo usare. Lapalissiano ( ciao! :) e
profondamente vero. Solo che tu invece di farti aiutare a aiutarti ti
sei imbizzarrito e hai scritto quel che qui sotto ho quotato e che ho
intenzione di verificare punto per punto.
> Premettendo che se nella guida del mio Excel 2000 digito:
Nella Guida, dici. Quale Guida? Quella che si apre premendo il tasto F1
da Excel o quella che si apre premendo il tasto F1 da Visual Basic?
> - WithEvents mi dice impossibile interpretare il testo
Tu apri Excel 2000... per cercare la parola "WithEvents"... che e' una
parola che ti serve... per scrivere codice Visual Basic, vero? Questo
dovresti saperlo! Allora fa' cosi':
Strumenti > Macro > Visual Basic Editor
F1
Ricerca libera
Come procedere?
WithEvents
[ Cerca ]
Ottieni, nella lista "Selezionare l'argomento da visualizzare", fra le
altre voci, queste:
Utilizzo degli eventi con oggetti di Microsoft Excel
Utilizzo di eventi con l'oggetto Application
> - application mi dice impossibile interpretare il testo
> >Potresti incominciare consultando la Guida alla pagina:
> > Utilizzo di eventi con l'oggetto Application
> non mi sembra che la mia guida abbia pagine
Diomio!... E che cosa ha allora la tua Guida?... Videate? Va bene anche
videate.
> e se cerco
> Utilizzo di eventi con l'oggetto Application
> mi restituisce messaggi non pertinenti.
Se fai come ti ho detto non te lo dira' piu'.
> Resta quindi:
> > Non ci starebbe male nemmeno una ricerca con Google Groups nei post di
> > questo ng e parola chiave "WithEvents".
> Ora... ti assicuro che a fronte del numero dei miei post, proprio
> utilizzando la ricerca sul nsg e incrociandola con l'help
Dunque NON hai fatto la ricerca che ti ho indicato! Perche' l'avessi
fatta, e fatta come ti ho indicato:
http://groups.google.com/groups?as_q=withevents&as_ugroup=microsoft.public.it.office.excel
avresti trovato al primo posto nei risultati proprio un mio post col
codice che ti serve, o almeno buonaparte. Questo:
> e magari
> qualche altra risorsa sul web sono riuscito molte volte a risolvere
> "in proprio i miei problemi".
> Le altre ho chiesto e quasi sempre mi avete aiutato.
> La problematica che sottopongo alla Vostra attenzione è per me
> (autodidatta che usa excel solo quando ne ha bisogno) nuova.
> Fermare l'esecuzione di una macro in attesa che succeda qualcosa
> altrove (la chiusura di un altro foglio di lavoro) e valutare cosa è
> successo sul foglio oramai chiuso (se è stato modificato o no) è per
> me (allo stato)... arabo.
> E ti assicuro che per noi inesperti, andarsi a studiare soluzioni
> confezionate per altri casi su materie per le quali l'help non è di
> nessuno aiuto è ardua impresa.
> In definitiva.
> Se pensi che abbia posto il problema per avere "la pappa pronta" ne
> hai facoltà... è legittimo.
> E, visto la materia del contendere... penso che sia anche vero.
> Se pensi che io possa imparare a fare quello che mi serve
> copiaincollando codice criptico (per chi non l'ha creato). Ti chiedo
> scusa... mi hai sopravalutato.
> Se pensi che, con il tuo procedere, mi hai aiutato a risolvere il
> problema ... ti sei sbagliato.
Bella questa! Mi ricorda la barzelletta della mongolfiera... La conosci?
No? Te la racconto allora.
**********
Volando in mongolfiera, un uomo si perde e grida a una persona a terra:
- Mi scusi, dove sono?
- In una mongolfiera! - risponde l'altro.
- Lei deve lavorare nell'informatica - replica il primo.
- E' vero, ma come fa a saperlo?
- La sua risposta e' tecnicamente corretta, ma non serve a nulla.
- Lei allora deve essere un dirigente aziendale - ribatte l'uomo a
terra.
- Ha ragione. Come l'ha capito?
- Non sa dove si trova ne' dove sta andando e si aspetta che io la possa
aiutare. La sua situazione e' uguale a prima che ci incontrassimo, ma
adesso, chissa' perche', sembra che sia colpa mia!
**********
Se sei un dirigente aziendale... perche' non incarichi qualcuno di fare
cio' che ti serve? Pagandolo il giusto, naturalmente.
Se sei un informatico... ahi ahi ahi. Che aspetti a metterti a studiare?
Se non sei ne' l'uno ne' l'altro... (ricordo che parlavi di un certo
"capo") impara almeno a farti aiutare dal ng.
Ma forse sei un aspirante... Un aspirante cosa? Solo tu puoi deciderlo.
> Vi saluto e vi ringrazio per l'attenzione.
Ossequi. Adesso pero' basta frignare (tu) e prendere in giro (io,
perche' mi hai provocato ;-) e ricominciamo seriamente a risolvere il
*tuo* problema. Se ti va. Gli elementi di base ora dovresti averli. Se
c'e' qualcosa che non capisci... Fischia! Seriamente pero'. Speravo di
non doverlo precisare: "fischia" sta per "indica chiaramente cosa non
riesci a fare di cio' che ti e' stato proposto, spiega dettagliatamente
cosa hai fatto, ricordati che noi non siamo dietro la tua schiena e non
possiamo vedere cio' che vedi tu nel tuo monitor". Ok?
Pensavo che fosse un luogo ove chi ignora riceve aiuto da chi sa e non
un circolo esclusivo per conoscitori.
Evidentemente zoomare il foglio al 110% era più interessante del mio
quesito visto che a quello hai risposto con dovizia di particolari (o,
se vuoi gli hai dato la "pappa pronta") e non l'hai rimandato a fare
ricerche varie.
Poi, sono particolarmente, sfortunato visto che se non sbaglio è la
seconda volta che mi capita.
Bella la barzelletta della mongolfiera.
L'ho memorizzata insieme a quella dei 3 ingegneri sulla macchina
guasta. Sicuramente la conosci. E sai quanto è vera, nel campo
informatico. E sai anche che uno che non frequenta la materia .. non
potrebbe riderne ed apprezzarla.
Hai scritto tutte cose corrette. Peraltro non è la prima volta che
metti in evidenza alla comunità le mie scarse conoscenze.
Chi lo sa ... forse in qualche altra vita ti ho fatto qualche cosa.
E, data la mia condizione di sudditanza psicologica con coloro che
saprebbero darmi la risposta, mi accollo anche il tuo sarcasmo su
quello che vorrei essere.
Posso però dirti quello che sono:
- visto che ho un capo non sono un dirigente (vero è che spesso un
dirigente ha un capo, ma se lo fossi, avrei utilizzato la nota tecnica
dello scaricabarile e non sarei qui a frignare, come dici tu);
- visto che sono ignorante in VB (e ne sono consapevole e non me ne
vergogno), non mi guadagno il pane nel ramo informatico
- visto che il mio capo chiede a me (e non ad un tuo collega) di
risolvergli i problemi informatici probabilmente è perchè soldi da
spendere per queste cose non ce ne sono. E pensa che lui pagherebbe la
parcella del tuo collega senza uscire un euro dalla sua tasca.
Infine non penso ci fosse la necessità di essere dietro la mia
scrivania per comprendere il problema. E' scritto nel post iniziale.
Comunque non ti preoccupare. Già l'ho informato di non poter
soddisfare la sua richiesta.
Un saluto a tutti e scusate l'OT.
Alla prossima
[...]
> Comunque non ti preoccupare. Già l'ho informato di non poter
> soddisfare la sua richiesta.
> Un saluto a tutti e scusate l'OT.
> Alla prossima
Grazie per il riscontro. Peccato pero' tu abbia fatto una lettura
*molto* parziale di quel che ho scritto. Le informazioni che ti
servivano c'erano tutte. Sarebbe bastato dialogare, invece di
lamentarsi.
>OK.
>Chiedo scusa a tutti per l'uso improprio che ho fatto di questa
>comunitą.
>
>Pensavo che fosse un luogo ove chi ignora riceve aiuto da chi sa e non
>un circolo esclusivo per conoscitori.
Entrambe interpretazioni sbagliate: il newsgroup č un luogo di
confronto. L'aiuto ne č un sottoprodotto.
A parte che anche Maurizio Borrelli, *in fondo*, si č detto disponibile
a approfondire ogni elemento oscuro, tu e lui non siete gli unici
frequentatori del newsgroup. Hai risposto punto per punto a quanto
avresti potuto sorvolare (le prese in giro di Maurizio) saltando a pié
pari tutto ciņ che poteva avvicinare alla soluzione, o almeno al
dipanamento del problema. La mia impressione č che non solo volevi la
"pappa pronta", ma la volevi proprio da Maurizio... forse in qualche
altra vita č stato la tua mamma! :-D
--
Tiziano Marmiroli
Microsoft MVP - Office System
Ciao Pico1965
Se posso permettermi un'intrusione.....
Maurizio e gli altri (ciao a tutti) mettono disinteressatamente a
disposizione le loro non comuni conoscenze per risolvere i problemi che
vengono postati (a volte qualche problema semplice riesco a risolverlo
anch'io grazie a loro) è sufficiente seguirne pazientemente i consigli, c'è
solo da imparare, e tanto!
Se fossi in te ritornerei in argomento cominciando con un bel :-))), vedrai
che ci guadagni!
Ciao Paolo