Newsgroup: it.comp.appl.access
Titolo: Automazione Access - Word con inserimento del codice di campo 'database'

Ho questo problema:
Sto cercando di utilizzare un modello di carta intestata Microsoft Word 
(tranquillamente modificabile dall'utente) al posto dei report in access.
Mi sono fatto aiutare dal NG, e ci sono quasi riuscito, utilizzando la 
funzione "inserisci database" (codici di campo in word).
In questo modo, dalla mia procedura, anzichè produrre un report per ogni 
esigenza, vado a "popolare" una tabella di un db esterno, che viene 
"chiamato" dal MSWORD stesso.
Tutto ok, ma ho 2 problemi:
1) è possibile evitare la visualizzazione del primo rigo corrispondente ai 
nomi dei campi del database? (Visto che i nomi di campo di quel db sono 
generici: Campo1, Campo2, etc. proprio perchè il report è generico)
2) La mia procedura và ad aprire direttamente il modello word dopo aver 
popolato la tabella, ma è necessario cliccare manualmente su "aggiorna dati" 
nella barra degli strumenti "database", altrimenti vengono visualizzati i 
vecchi risultati.  C'è la possibilità di farlo automaticamente?
Grazie infirnite a chiunque possa aiutarmi
Marco

 Marco
Ciao.
-- 
Sergio MAZZA 

 ha scritto nel messaggio 
news:evlit9$hvh$1...@tdi.cu.mi.it...

Ho provato sergio, ma assolutamente, il modello word non risente di alcuna 
delle impostazioni che mi hai suggerito (nonostante le istruzioni vengano 
eseguite).
Mi viene da pensare che il collegamento al database io l'ho inserito nel 
modello word, quindi credo che lavori autonomamente. E' questo il problema?
Nel qual caso non so come inserire questo collegamento nella procedura dopo 
l'apertura del documento WORD stesso.
In ogni caso, ti allego la mia routine, con le impostazioni che mi hai 
suggerito.
---------
Dim xWord As Object
Dim wordoc As Object
Dim blOpen As Boolean
Dim xRange As Object               ' Oggetto Range
Le tre righe sotto riportate, mi generano un errore (tipo non riconosciuto) 
quindi le ho 'remmate'
    'Dim xSelection As Find        ' Oggetto Find
    'Dim xTabella As Table         ' Oggetto Tabella
    'Dim xCella As Cell            ' Oggetto Cella
'
' Routine automazione dati di stampa unione x MSWORD
automazione_Word:
        On Error Resume Next
        blOpen = True
        Set xWord = GetObject(, "Word.Application")
        If Err.Number = 429 Then
            Set xWord = CreateObject("Word.Application")
            blOpen = False
            Err.Number = 0
        End If
        'On Error GoTo Err_Comando39_Click
        '
        Set wordoc = xWord.Documents.Add([carta_int])
        xWord.Visible = False
        ' --- > aggiornamento dei dati del db appoggio nel documento word ed 
elimina visualizz.del nome dei campi (così come mi hai suggerito)
        wordoc.Selection.Tables(1).AutoFormat
       '     wordoc.format = wdTableFormatClassic1 (su questa riga mi genera 
un errore)
        wordoc.Font.Bold = False
        wordoc.Font.Size = 10
        wordoc.ApplyBorders = False
        wordoc.ApplyShading = True
        wordoc.ApplyFont = True
        wordoc.ApplyColor = True
        wordoc.ApplyHeadingRows = True
        wordoc.ApplyLastRow = False
        wordoc.ApplyFirstColumn = False
        wordoc.ApplyLastColumn = True
        wordoc.AutoFit = True
' --- questa è poi la riga relativa al 2° suggerimento che mi hai dato, per 
autoaggiornare i valori.
        wordoc.Fields.Update
         xWord.Visible = True
-----
Un'altra cosa mi viene da pensare: l'associazine tardiva potrebbe essere 
un'altra causa?
Grazie infinite ancora
Marco 

 Grazie infinite ancora


 ha scritto nel messaggio 
news:evnpk7$tlo$1...@tdi.cu.mi.it...

Allora Sergio, dopo tanti tentativi ho risolto creando direttamente la 
tabella (ed impostandola) su un doc. word vuoto (Non ci sono riuscito con 
una tabella preesistente: mah!)
Cmq. Tutto Ok!
Ti ringrazio molto
Marco 

 Ti ringrazio molto
Di nulla...
