Newsgroup: it.comp.appl.access
Titolo: Errore di runtime 91

Salve a tutti ho utilizzato una routine trovata sul sitocomune per utilizzare un
modello di Word con dei segnalibri, per stampare dei dati presenti in una
maschera di Access.
In un computer ho Win 98 e Access 2000 e funziona bene, ho provato ad
installare ed eseguire la procedura in un WinXP con Access 2003 e mi da il
seguente errore:
Errore di runtime 91;variabile oggetto o variabile del blocco With non
impostata.
Di seguito la routine:alla 15a riga "Wrd.Visible = True" mi indica l'errore
Grazie per l'aiuto
Private Sub ESPORTA_Click()
Dim Wrd As Word.Application, Doc As Word.Document
Dim Rst As DAO.Recordset
Dim MODELLO As String, NomeFile As String, i As Integer
Dim Record As String, SQL As String
Dim Tbl As String * 1
Dim TotRiga As Currency, Totale As Currency
Dim ReplSel As Boolean
 
    'Trova il nome, completo di percorso, del modello word
    '("Lettera.dot" nella stessa cartella del database)
    MODELLO = CurrentDb.Name
    MODELLO = Left(MODELLO, Len(MODELLO) - Len(Dir(MODELLO))) &
"contratto.dot"
    On Error Resume Next 'gestione errori step by step
    'cerca un'istanza di Word già aperta
    Set Wrd = GetObject(, "Word.Application")
    If Err.Number = 429 Then
        'se c'è stato un errore è perchè Word non era già aperto:
        'aprilo adesso
    Set Wrd = CreateObject("Word.Application")
    End If
 
    On Error GoTo 0 'ripristina la segnalazione degli errori
 
    'rendi visibile la finestra di Word:
        Wrd.Visible = True
 
    'attiva Word e portalo in primo piano:
        Wrd.Activate
    'abilita l'opzione "Sostituisci la selezione". Se non fosse
    'attiva, i campi modulo rimarrebbero all'interno del testo.
    ReplSel = Wrd.Options.ReplaceSelection
    Wrd.Options.ReplaceSelection = True
 
    'Apri un nuovo documento basato sul modello:
    Set Doc = Wrd.Documents.Add(MODELLO)
    'attivalo e portalo in primo piano:
    Doc.Activate
 
 
 
    'iva
    Doc.Bookmarks("iva").Select
    Wrd.Selection.TypeText Me.formativa
    'interval1
    Doc.Bookmarks("interval1").Select
    Wrd.Selection.TypeText Me.formatinterval
    'interval2
    Doc.Bookmarks("interval2").Select
    Wrd.Selection.TypeText Me.formatinterval
    'scontato
    Doc.Bookmarks("scontato").Select
    Wrd.Selection.TypeText Me.scontato
    'integrale1
    Doc.Bookmarks("integrale").Select
    Wrd.Selection.TypeText Me.integrale
    'integrale2
    Doc.Bookmarks("integrale2").Select
    Wrd.Selection.TypeText Me.integrale
    'ripristina il valore originario dell'opzione
    '"Sostituisci la selezione"
    Wrd.Options.ReplaceSelection = ReplSel
 
    'avvisa l'utente che l'esportazione è terminata
    Wrd.Application.WordBasic.MsgBox "Esportazione terminata", "Esportazione
dati da Access"
 
    'azzera le variabili oggetto
    Set Doc = Nothing
    Set Wrd = Nothing
    'NB: L'azzeramento degli oggetti Doc e Wrd senza la loro
    'preventiva chiusura (Doc.Close e Wrd.Quit)
    'fa sì che dopo l'esportazione dei dati
    'Word e il documento rimangano aperti
End Sub  'ESPORTA_Click
-----------------------------------------
Messaggio inviato con Excite Newsgroup.
http://www.excite.it/newsgroup

lcinformatica ha scritto:



I riferimenti alla libreria di Word ci sono?
Prova ad aprire Word prima di eseguire la procedura, giusto per vedere se
così funziona e capire dov'è l'errore.
Oppure metti un punto di interruzione all'inizio sull'On Error ed eseguila
passo passo con F8, vedi se esegue la GetObject() o la CreateObject().
Ciao.
-Marco-
-- 
namor at inwind punto it
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 namor at inwind punto it
Ciao Ben risentito.....!
@Alex