Newsgroup: it.comp.appl.access
Titolo: Rendere impossibile all' utente la chiusura di excel o word

Si puo' fare in modo, col vba da access, di aprire un file excel o
word
e renderlo visibile e manipolabile all' utente ma in modo che non
possa chiudere l' applicazione (il file puo' chiuderlo) se non
passando
attraverso un tasto di una maschera della applicazione di access
stessa ?
(Che in realta' non lo chiude, ma rende solo l' applicazione
invisibile e pronta per altre elaborazioni, cosi' non la devo
chiudere e riaprire continuamente, che porta via un sacco
di tempo)
Grazie.

 ha scritto nel messaggio 
news:96fb04e0-954c-460c...@t20g2000yqa.googlegroups.com...

Mi dai l'indirizzo del tuo pusher?
Antonio 

 ha scritto nel messaggio 
news:zyJvo.108366$Ua.2...@twister2.libero.it...

Ognuno i segreti per star bene se li tiene per s�! ;) 

 ha scritto nel messaggio 
news:%AJvo.108368$Ua.2...@twister2.libero.it...

eh, ma quella � robba bona forte eh...


che senso ha aprire e chiudere un file word da access...se poi lo 
manipoli da word direttamente?
magari prova a spiegare lo scenario dell'applicazione
ciao
BFS

 wrote in news:96fb04e0-954c-460c-
9d6c-0c8...@t20g2000yqa.googlegroups.com
:

prima vuoi scrivere files sul pc dell'utente bloccandoglieli e impedendogli 
di eliminarli (dal suo pc...)
poi ti sfoghi perche' vuoi spingere in azienda soluzioni potenzialmente 
costose e complesse senza avere motivi che giustificherebbero il tutto.
adesso vuoi usare il pc dell'utente e decidere che programmi apre e quali 
no.
ma...
non fai prima a dire cosa vuoi fare invece che continuare a buttare in giro 
pezzi sconnessi di richieste/sfoghi un pochettino... strampalati?
-- 
Paolo opg
BE AWARE that this post uses a fake reply-to address
to contact me write to:
janickg ( at ) hotmail ( dot ) com
--



allora non hai capito.
radicale.00x non dice mai le cose come gli servono nella realtà, ma
disegna scenari MOLTO ipnotici e allucinanti......
ciao 
Simona

buttare in giro pezzi sconnessi di richieste/sfoghi un >pochettino... strampalati?
Prima di darmi dello "strampalato" (ma tranquillo, non mi
offendo e tutto sommato ne hai il diritto) dovresti capire
che :
SONO ESIGENZE D.I.V.E.R.S.E. Mi spiego ? DIVERSE. ;-)
diverse, diverse,diverse, diverse ... ;-)
La mia applicazione NON fa una cosa soltanto ma MOLTE
cose, e soddisfa a esigenze -diverse-.
Anche COMPLETAMENTE diverse.
Detto cio' :
Per quanto riguarda il fatto di non poter chiudere la
applicazione excel (o word), cerco di spiegarmi meglio :
a)
Intanto NON OGNI istanza dell' excel non deve poter essere
chiusa, ma soltanto quella creata e indirizzata dalla
applicazione VBA che gira in access.
Quindi, non sto chiedendo di forzare l' utente ad aprire
e chiudere solo le applicazione che dico io BENSI' :
sto chiedendo come si possa fare per impedire all' utente
di chiudere *quella e solo quella* istanza della applic.
aperta dal programma.
Ok ? Mi sono spiegato ?
b)
veniamo alle apparentemente arcane ragioni di cio' :
Il mio programma spesso apre doc word e compila documenti,
apre fogli excel e procede a report.
Ogni volta la struttura generale in pseudo codice e' :
apre applicazione word    (tempo : t1)
     compila documento Y  (tempo : t2)
     manda a video Y      (tempo : t3)
Risulta t1/(t1+t2+t3) = 0,60/0,70 circa.
Se QUINDI (uffa ...) avessi a disposizione un word
GIA' APERTO risparmierei il 65% del tempo di tutta
la operazione.
Senonche' se l' utente dopo che lo ha visionato e
stampato CHIUDE (oltre al file) il word, sono ...
fottuto. Per ovvi motivi !
Mi sono spiegato stavolta ? Grazie per l' attenzione.
Un saluto affettuoso a tutti.

 - Mostra testo citato -
Poi lo passi anche a me...?
Che a nessuno venga voglia di suggerire il SubClassing che lo cazio
subito...!
@Alex

 subito...!
ca'zz'io, con due 'zeta'. :-)
Spero ci sia una soluzione piu' semplice.


prova leggere qui.
http://forum.masterdrive.it/ms-office-access-vba-23/disabilitare-pulsanti-chiusura-word-19348/
non ho tempo di provarla ma sembra faccia al caso tuo
ciao
BFS

 non ho tempo di provarla ma sembra faccia al caso tuo
Grande, grazie mille !
Nel frattempo ho capito che se nel modulo
"thisworkbook" di excel scrivete :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Cancel = True
    ' fai questo e quest' altro
    Application.Visible = False
End Sub
l' applicazione non viene chiusa, ma solo resa
invisibile. E' perfetto. Credo sul word si possa
fare altrettanto. Al limite usero' il tuo link.
Ciao.

 SONO ESIGENZE D.I.V.E.R.S.E. Mi spiego ? DIVERSE.;-)
Dai Vari Esperimenti Rimane Solo Eutanasia
-- 
ac (x=y-1)

 wrote in
news:55e327c4-7024-4ca6...@n26g2000yqh.googlegroups.com
: 

lasciando perdere commenti riguardo la singola applicazione che svolge
compiti COMPLETAMENTE diversi, adesso il quadro e' decisamente piu'
chiaro. 


 No, non sono matto. Adesso ti spiego ... :D
cut
Prima di tutto io darei uno sguardo alle opzioni di avvio di Word da riga di 
comando:
http://support.microsoft.com/kb/210565/it
http://office.microsoft.com/it-it/word-help/opzioni-della-riga-di-comando-di-microsoft-office-word-2007-HP010164010.aspx
e poi utilizzerei un po' di codice direttamente caricato con il file di Word 
(quindi nel vba di word) del tipo che intercetta la chiusura del Document o 
della Windows.
Qui puoi trovare un esempio:
http://msdn.microsoft.com/en-us/library/aa211766(v=office.11).aspx
Ciao, Carlo

adesso il quadro e' >decisamente piu' chiaro.
Visto che non sono matto ? :D
E' che non sono bravo a spiegarmi, tutto qui.
Anzi : non sono proprio capace di spiegarmi,
diciamo la verita'.

 End Sub

Si ma così... riuscirai prima o poi a chiuderlo definitivamente quando
chiudi Access, o rimarrà sempre nascosto in memoria ad appesantire il PC?
Ciao.
-Marco-
PS: Non vale dire all'utente "Apri il Task manager e terminalo"!
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


si certo...puoi chiudere il documento word da vba ma lasciare word 
aperto...e invisibile. Alla chiusura di access puoi far chiudere pure il 
word
ciao
BFS

 PS: Non vale dire all'utente "Apri il Task manager e terminalo"!
:D

radicale 004 ha scritto:













Già meglio. Attenzione che più complichi le cose e più è facile che sorga
qualche errore.
Se l'utente fa "File-->Salva con nome" e cambia il nome del file tu Word
non lo chiudi più.
Io più semplicemente metterei una variabile e una Public Sub Chiudi() nel
modulo word
Variabile locale (a livello di modulo): 
  private NonChiudere as boolean
Evento Open:
  NonChiudere = True
Evento BeforeClose:
  Cancel = NonChiudere 
Public Sub Chiudi() 
  NonChiudere = False
  Document.Close
  Application.Quit
Word si chiude solo da Access chiamando la Sub che imposta
NonChiudere=False, non più con la sua X o da menù File-->Esci.
Ciao.
-Marco-


 NonChiudere=False, non più con la sua X o da menù File-->Esci.
Si, mi pare buona, ma,
(sempre che io abbia capito, eh !)  :
1)
prima di tutto, come fai a indirizzare da Access una
variabile dichiarata in un modulo associato a un documento
word ? Si puo' fare ? Come ?
2)
Se ho 3 o 4 file word aperti contemporeanamente,
come faccio a gestirli ? Allora ogni word che apro
deve avere una variabile di nome DIVERSO.
Dico bene ? Fammi sapere.

 
per chiudere, sai che la maggioranza degli utenti 'normali' tiene il 
proprio programma preferito a tutto schermo?
e che per chiuderlo clicca sulla X?
e secondo te cosa fanno quando vedono che cliccando sulla X il documento di 
word non si chiude?
esatto: task manager e il tuo codice viene scavalcato.
salvo poi inchiodarsi in fase di chiusura del tuo programma perche' 
risultano aperti quei files che l'utente ha stroncato con il task manager.
files che magari si corrompono perche' chiusi in maniera non ortodossa.
senza dimenticare i cadaveri tipo '~WR0000.doc'.
hai provato a fare un pensierino sulle complicazioni e i problemi che ti 
stai tirando addosso?
il tuo scopo e' ottenere prestazioni strabilianti nei test o un programma 
utilizzabile nel mondo reale?


il tuo scopo e' ottenere prestazioni strabilianti nei test o un >programma utilizzabile nel mondo reale?
Tu hai ragione.
La cosa rimarra' solo a livello teorico.

 deve avere una variabile di nome DIVERSO.
Se apri 3 o 4 file contemporaneamente da Access tramite automazione devi
per forza avere 3 o 4 oggetti Word.Document (altrimenti puoi gestire solo
l'ultimo file e perdi il controllo sui precedenti), quindi ogni file pu�
essere gestito separatamente utilizzando il corrispondente oggetto
Word.Document.
Sei sicuro che in Word ci sia l'evento Before_Close come in Excel in cui
puoi impostare Cancel=True per bloccare la chiusura? Io no....


 -Marco-
DocumentBeforeClose
Ciao, Carlo 

 Ciao, Carlo
Ah, ma quello � a livello di Word, non di Document. La cosa si complica,
comunque credo sia fattibile, anche se io personalmente non mi imbarcherei
mai in un progetto cos� complicato. Ci sono troppi possibili POF (point of
failure).


 failure).
Assolutamente vero. Infattti c' ho rinunciato.
Per risparmiare pochi secondi non ne vale assolutamente la pena.

Assolutamente vero. Infattti c' ho rinunciato.
Per risparmiare pochi secondi non ne vale assolutamente la pena.
------
Visto che le risorse ce le hai (nel senso, puoi spendere da quanto ho 
compreso... che poi capirai, sono 99 dollari), credo che uno sguardo a 
questo tu debba darlo ;)
http://www.soft3k.com/Word-Viewer-OCX-p12989.htm
 


wrote:

Si ma non capisco :
che vantaggi darebbe rispetto al normale interfacciamento con
un componente word ?

 ha scritto nel messaggio 
news:7c8ebf47-a0d5-4f0e...@l17g2000yqe.googlegroups.com...

Per questo dicevo di dargli uno sguardo... credo che ci sia la possibilit� 
di un totale controllo dell'oggetto, che essendo un ocx � interno cmq a un 
form, quindi gi� per questo lo gestisci come ti pare... quanto alle aperture 
multiple potresti usare la multi-istanza di un solo Form dedicato a questo e 
avresti risolto.
Io fossi in te lo installerei e leggerei la guida, chiss� mai che non faccia 
ci� che vuoi.