Ciao a tutti.
Ho scritto una Sub che scrive nelle colonne di una tabella precedentemente creata in un file Word.
La richiesta di scrittura nelle colonne della tabella potrebbe essere ripetuta più volte e tutto sembra funzionare finchè queste richieste avvengono piuttosto lentamente, ma se due o più richieste avvengono piuttosto rapidamente, l'applicazione si inchioda e lo fa sull'istruzione di ciusura dell'applicazione Word, che comunque è piuttosto lenta (è normale?)
Il codice è più o meno come segue:
codice:
Public Sub Cmd_Write_Click()
Dim Path_File As String
Dim My_Appl As Word.Application
Dim My_Doc As Word.Document
'Apre l'Applicazione
Set My_Appl = New Word.Application
'Apre il documento con la tabella già incorporata
Set My_Doc = My_Appl.Documents.Open(Path_File)
My_Doc.Activate
My_Appl.Visible = False
'Serie di operazioni sulle colonne della tabella che qui ometto
'Chiude Word dopo aver chiuso e salvato il documento
My_Doc.Close True
My_Appl.Quit (False)
Set My_Appl = Nothing
Durante il Debug ho notato che il collo di bottiglia è creato dall'istruzione che ho messo in neretto che chiude l'Applicazione Word. Ho provato ad ometterla, ma ovviamente viene creata un'istanza per ogni nuova richiesta di immissione di dati nella tabella del documento.
Insomma, se la tolgo, ho un mare di istanze che alla lunga ovviamente non vanno bene, se la lascio, due richieste successive mi bloccano l'applicazione! :master:
Qualcuno di Voi, avrebbe qualche idea per aiutarmi?
Vi ringrazio in anticipo