Discussione:
stampa unione VBA
(troppo vecchio per rispondere)
Gil
2007-06-27 15:14:20 UTC
Permalink
ciao a tutti,
ho bisogno di stampare delle etichette prendendo i dati da un file Excel.
La soluzione è normamente utilizzare la stampa unione, che non mi crea
grattacapi. Il problema è che questa stampa dovrei lanciarla tramite una
macro in VBA.
qualcuno ha già provato ?
grazie per l'aiuto

Gil
Norman Jones
2007-06-27 15:22:34 UTC
Permalink
Ciao Gil,

Prova a attivare il registratore e effetua i passi
manualmente. Il codice risultante potrebbe
essere modifica
--
---
Regards,
Norman
Microsoft Excel MVP
Post by Gil
ciao a tutti,
ho bisogno di stampare delle etichette prendendo i dati da un file Excel.
La soluzione è normamente utilizzare la stampa unione, che non mi crea
grattacapi. Il problema è che questa stampa dovrei lanciarla tramite una
macro in VBA.
qualcuno ha già provato ?
grazie per l'aiuto
Gil
Mauro Gamberini
2007-06-27 15:26:46 UTC
Permalink
Post by Gil
ho bisogno di stampare delle etichette prendendo i dati da un file Excel.
La soluzione è normamente utilizzare la stampa unione, che non mi crea
grattacapi. Il problema è che questa stampa dovrei lanciarla tramite una
macro in VBA.
qualcuno ha già provato ?
grazie per l'aiuto
Quindi la stampa unione la fai da Word, giusto?
Sarebbe meglio chiedere qui:

microsoft.public.it.office.word

Comunque puoi dare un'occhiatina qui:

http://www.google.it/search?hl=it&q=word+vba+mail+merge&btnG=Cerca+con+Google&meta=

http://groups.google.it/groups?hl=it&q=word%20vba%20mail%20merge&btnG=Cerca+con+Google&ie=UTF-8&oe=UTF-8&um=1&sa=N&tab=wg
--
---------------------------
Mauro Gamberini
http://www.riolab.org/
Norman Jones
2007-06-27 15:31:38 UTC
Permalink
Ciao Gil,

E partito un colpo! La mia risposta era
intesa come:

'------------------
ho bisogno di stampare delle etichette prendendo i dati da un file Excel.
La soluzione è normamente utilizzare la stampa unione, che non mi crea
grattacapi. Il problema è che questa stampa dovrei lanciarla tramite una
macro in VBA.
qualcuno ha già provato ?
'------------------

Prova ad attivare il registratore e effetua i
passi manualmente. Il codice risultante potrebbe
essere modificata per rendelo di piu' ampio
applicazione.

Se dovessi incontrare dei problemi con tale
modifica, posta il codice in una risposta e indica
i problemi incontrati


---
Regards,
Norman
Microsoft Excel MVP
Gil
2007-07-03 07:51:39 UTC
Permalink
ciao gente!,
ieri avevo scritto di aver risolto il problema. Non è completamente vero
!!!!!!!

riesco, partendo da Excel, ad aprire un documento Word e lanciare una macro
memorizzata.
Non sempre però tutto fila liscio.
In particolare il problema della stampa unione zoppica.
se lancio la macro direttamente in ambiente Word tutto è OK.
se lancio la macro partendo da una macro Excel mi da un errore:
Errore di run-time 5852: l'oggetto richiesto non è disponibile.

riferito a

With ActiveDocument.MailMerge
.Destination = wdSendToNewDocument
.SuppressBlankLines = True

non si riesce a salvare il risultato in un documento ( anche sostituendo
wdSendToPrint..... ) l'errore è il medesimo.

c'è qualche comunicazione tra Excel e Word non corretta.

Se la macro è "più semplice" tutto sembra funzionare.


Questa è la macro EXCEL che utilizzo

Sub prepara_etichette()

Dim WordApp As Word.Application
Dim WordDoc As Word.Document


Call indirizzamento

Set WordApp = CreateObject("Word.Application")
Set WordDoc = WordApp.Documents.Open _
(indirizzo & "\printlabel.doc")


WordApp.Visible = True
WordApp.Run "label"
WordApp.Quit SaveChanges:=wdDoNotSaveChanges
Set WordApp = Nothing
End Sub



questa è la macro WORD (che si pianta)

Dim indirizzo As String

Sub label()
'
' label Macro
' Macro registrata il 02/07/2007 da gil
'
'ChangeFileOpenDirectory indirizzo
Call indirizzamento
ChangeFileOpenDirectory indirizzo
Documents.Open FileName:="modello_eti.doc", ConfirmConversions:=False, _
ReadOnly:=False, AddToRecentFiles:=False, PasswordDocument:="", _
PasswordTemplate:="", Revert:=False, WritePasswordDocument:="", _
WritePasswordTemplate:="", Format:=wdOpenFormatAuto,
XMLTransform:=""

With ActiveDocument.MailMerge
.Destination = wdSendToNewDocument
.SuppressBlankLines = True
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
.Execute Pause:=False
End With

ActiveDocument.SaveAs FileName:="etichette.doc", FileFormat:= _
wdFormatDocument, LockComments:=False, Password:="",
AddToRecentFiles:= _
True, WritePassword:="", ReadOnlyRecommended:=False,
EmbedTrueTypeFonts:= _
False, SaveNativePictureFormat:=False, SaveFormsData:=False, _
SaveAsAOCELetter:=False
ActiveDocument.Close savechanges:=True
ActiveDocument.Close savechanges:=False

End Sub
Post by Norman Jones
Ciao Gil,
E partito un colpo! La mia risposta era
'------------------
ho bisogno di stampare delle etichette prendendo i dati da un file Excel.
La soluzione è normamente utilizzare la stampa unione, che non mi crea
grattacapi. Il problema è che questa stampa dovrei lanciarla tramite una
macro in VBA.
qualcuno ha già provato ?
'------------------
Prova ad attivare il registratore e effetua i
passi manualmente. Il codice risultante potrebbe
essere modificata per rendelo di piu' ampio
applicazione.
Se dovessi incontrare dei problemi con tale
modifica, posta il codice in una risposta e indica
i problemi incontrati
---
Regards,
Norman
Microsoft Excel MVP
Tiziano Marmiroli
2007-06-28 01:17:45 UTC
Permalink
Post by Gil
ho bisogno di stampare delle etichette prendendo i dati da un file Excel.
La soluzione è normamente utilizzare la stampa unione, che non mi crea
grattacapi. Il problema è che questa stampa dovrei lanciarla tramite una
macro in VBA.
Il newsgroup dedicato a Word è news:\\microsoft.public.it.office.word

Puoi vedere Automazione di Word con Visual Basic per creare
un'operazione di stampa unione http://support.microsoft.com/kb/285332/it

Facci sapere se e come hai risolto, grazie.
--
Tiziano Marmiroli
Microsoft MVP - Office System
Gil
2007-06-28 07:30:41 UTC
Permalink
scusate,
forse non mi sono espresso correttamente.
Il problema non è come fare a registrare la macro in Word.
Il problema è:
sto lavorando in ambiente Excel ed ho come risultato un file di dati da
stampare su etichetta; come posso dal mio ambiente Excel far partire Word ed
una sua macro, e tornare infine ( dopo la stampa) al mio ambiente di lavoro
Excel ?
spero di essere stato più chiaro.
ciao
Post by Tiziano Marmiroli
Post by Gil
ho bisogno di stampare delle etichette prendendo i dati da un file Excel.
La soluzione è normamente utilizzare la stampa unione, che non mi crea
grattacapi. Il problema è che questa stampa dovrei lanciarla tramite una
macro in VBA.
Il newsgroup dedicato a Word è news:\\microsoft.public.it.office.word
Puoi vedere Automazione di Word con Visual Basic per creare
un'operazione di stampa unione http://support.microsoft.com/kb/285332/it
Facci sapere se e come hai risolto, grazie.
--
Tiziano Marmiroli
Microsoft MVP - Office System
Tiziano Marmiroli
2007-06-28 07:39:20 UTC
Permalink
Post by Gil
sto lavorando in ambiente Excel ed ho come risultato un file di dati da
stampare su etichetta; come posso dal mio ambiente Excel far partire Word ed
una sua macro, e tornare infine ( dopo la stampa) al mio ambiente di lavoro
Excel ?
spero di essere stato più chiaro.
Post by Tiziano Marmiroli
Puoi vedere Automazione di Word con Visual Basic per creare
un'operazione di stampa unione http://support.microsoft.com/kb/285332/it
e quanto lì citato nella sezione Riferimenti
--
Tiziano Marmiroli
Microsoft MVP - Office System
Gil
2007-07-02 12:22:59 UTC
Permalink
il problema è stato risolto (con un po' di fatica) seguendo le indicazioni
riportate in
http://support.microsoft.com/?kbid=213430
utilizzando il secondo metodo ( metodo di automazione)


Gil
Post by Tiziano Marmiroli
Post by Gil
sto lavorando in ambiente Excel ed ho come risultato un file di dati da
stampare su etichetta; come posso dal mio ambiente Excel far partire Word ed
una sua macro, e tornare infine ( dopo la stampa) al mio ambiente di lavoro
Excel ?
spero di essere stato più chiaro.
Post by Tiziano Marmiroli
Puoi vedere Automazione di Word con Visual Basic per creare
un'operazione di stampa unione http://support.microsoft.com/kb/285332/it
e quanto lì citato nella sezione Riferimenti
--
Tiziano Marmiroli
Microsoft MVP - Office System
Loading...