Newsgroup: it.comp.lang.visual-basic
Titolo: Help su come lanciare word al'interno di Explorer

Ci riprovo
Vorrei poter lanciare Ms Word all'interno di explorer
Al momento, grazie all'aiuto di Ugo e Roberto, sono riuscito a far
funzionare i comandi di word (macro, formattazione etc) SOLO se word è
aperto come applicazione a se stante.
Ad esempio il codice sottoriportato attiva Word (solo se è in esecuzione in
Background) ed esegue i comandi descritti
Sub ApriWord()
Dim WordObj
Set WordObj = CreateObject("Word.Basic")
'WordObj.FileApri "d:\documenti\TUTTE.DOC"      ' Questa istruzione apre il
file ma solo se word è aperto
WordObj.StrumMacro "prova", True                      'Questa istruzione
esegue la macro con nome prova ma solo se word è aperto
'WordObj.activate                                                  ' Questa
istruzione genera un errore
Qualcuno ha un suggerimento di come possa fare a lanciare il programma?
Ringrazio per qualsiasi risposta
Roberto

 wrote in message
Thoj7.70283$TS4.5...@news2.tin.it...

Prova a definire un oggetto Word.Application. L'esempio crea un oggetto
word, stampa in background un file ed alla fine scarica il word. Ho notato
che se si genera un errore, il word resta in back e per scaricarlo bisogna
aprirlo per vie normali e quindi chiuderlo.
Public Sub stampa(ByVal NomeFile As String)
  Dim _
    tabella As Word.Application
  Set tabella = New Word.Application
  tabella.Documents.Open OrigineDati, False
AncoraCopia:
  tabella.Application.PrintOut
  If MsgBox("Ancora una copia?", vbYesNo, "Stampa di " & OrigineDati = vbYes
Then GoTo AncoraCopia
  tabella.Application.Quit wdDoNotSaveChanges
End Sub


Niente da fare: si è "dimenticato" di specificare che usa Word95...
Tornando a Roberto: non puoi usare Word senza aprire Word... è come dire:
"vorrei azionare i tergicristalli ma senza avere una macchina"...
(se ho capito il senso del tuo problema...)
ciao
ugo

No, so che devo aprire word per poterlo utilizzare.
Piccola spiegazione:
Ho creato delle pagine in ASP per la gestione dei Serial number e ralativi
codici a barre di determinati articoli le quali  funzionano in "parallelo"
ad un software gestionale che non ha questo controllo ("Esatto").
Le pagine comunicano con due diversi database, uno è quello del software
gestionale (db Betrive) dal quale "ricevo" Codici articoli, clienti,
fornitori, impegni etc,  l'altro, un mdb, viene aggiornato e gestito dalle
pagine in ASP, e si occupa della gestione vera e propria dei SN con carico
articoli, gestione dei resi, in poche parole rintracciabilità dei singoli
pezzi.
Il problema è questo:
Ho delle pagine nelle quali devo gestire delle stampe di etichette, e,
siccome la quantità di cose da scrivere su di esse è notevole (devo usare un
corpo 5 o 6 per i caratteri oltre a svariati simboli)  e devono avere un
determinato layout, ho pensato di usare word per la loro gestione.
Mi sarebbe piaciuto poter utilizzare word come parte integrante
dell'applicazione che ho sviluppato.
Visto che sembra non essere possibile questo utilizzo di word, dovrò fare in
modo che le stampe delle etichette vengano gestite in maniera autonoma.
Qualcuno ha qualche altra soluzione da suggerirmi (uso di altre applicazioni
o componenti particolari)?
Vi ringrazio per l'interessamento
Roberto.


[cut]
Tieni anche presente che:
- se stampi barcode su stampanti termiche, i tempi di risposta di word sono
sicuramente insufficicenti a gestire la stampa.
In questo caso direi che l'unica soluzione sensata è quella di scrivere
delle routine di composizione stringhe in base al protocollo specifico della
stampante e "spararle" direttamente sulla lpt (o com) relativa.
- se stampi su comuni laser, allora ti è possibile fare il tutto con un
template di word che piloti, appunto, atraverso gli oggetti word.basic,
anche se forse potrebbe essere il caso di upgradare a word2000, per non
trovarti a scrivere codice che nasce già vecchio...
ciao
ugo