Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Stampa da Excell a Word

Ultimo Aggiornamento: 07/02/2018 10:36
Post: 72
Registrato il: 22/12/2017
Città: MILANO
Età: 44
Utente Junior
Excel2016
OFFLINE
06/02/2018 10:31

Ciao a tutti, ho ritrovato nel pc un file che avevo utilizzato per ottenere delle esportazioni dei dati (tramite segnalibri) disposti in orizzontale in un foglio Excell su un file di Word.
Il problema è che non riesco più a farlo funzionare e non riesco a capire come mai

Mi potreste aiutare? razie
Post: 2.653
Registrato il: 03/04/2013
Utente Veteran
Excel 2000 - 2013
OFFLINE
06/02/2018 12:41

Buona giornata, Chiara;
ho provato a riscrivere il Codice VBA e mi sembra funzionare ma, appena ho un attimo di tempo, analizzerò il tuo Codice per capire quale sia l'istruzione che crea problemi.
Preliminarmente basta posizionare il Cursore su una Cella della Riga nella quale in Colonna "A" ci sia il NomeFile da salvare e in Colonna "B" il Valore da riportare in Word e attivare il Codice VBA:
Option Explicit

Sub Trasferisci()
Dim sFILENAME As String
Dim NomeFile As String, NomeFile2 As String, Ragione_Sociale As String
Dim WrdApp As Object, WrdDoc As Object
Const FileDaAprire As String = "Base.docx"

    NomeFile = Cells(ActiveCell.Row, 1).Value
    Ragione_Sociale = Range("B2").Value
        sFILENAME = ThisWorkbook.Path & "\" & FileDaAprire
            Set WrdApp = CreateObject("Word.Application")
                WrdApp.Visible = True
            Set WrdDoc = WrdApp.Documents.Open(sFILENAME)
    With WrdDoc
    .Bookmarks("PROVA").Range.Text = Cells(ActiveCell.Row, 2).Value
        NomeFile2 = ThisWorkbook.Path & "\" & NomeFile & ".docx"
    End With
        WrdApp.ActiveDocument.SaveAs (NomeFile2)
            WrdApp.Quit
Set WrdApp = Nothing
Set WrdDoc = Nothing
End Sub


Ho aggiunto anche un Codice VBA che consente di aprire e visualizzare il File Word selezionato.
Option Explicit

Sub Apri_Word()
Dim sFILENAME As String
Dim NomeFile As String
Dim WrdApp As Object, WrdDoc As Object

    NomeFile = Cells(ActiveCell.Row, 1).Value & ".docx"
        sFILENAME = ThisWorkbook.Path & "\" & NomeFile
            Set WrdApp = CreateObject("Word.Application")
                WrdApp.Visible = True
            Set WrdDoc = WrdApp.Documents.Open(sFILENAME)
                WrdDoc.Activate
    VBA.AppActivate WrdApp.Windows(1).Caption
Set WrdApp = Nothing
Set WrdDoc = Nothing
End Sub


Direi che potresti provare i due Codici sopra proposti; poi, se hai problemi, posso allegare il File con il quale ho eseguito i miei Test.


A disposizione.

Buon Lavoro.

Giuseppe

Windows XP - Excel 2000
Windows 10 - Excel 2013
Post: 72
Registrato il: 22/12/2017
Città: MILANO
Età: 44
Utente Junior
Excel2016
OFFLINE
06/02/2018 13:03

Ti ringrazio moltissimo

Finalmente funziona

[Modificato da Chiara-ExcelForum 06/02/2018 13:16]
Post: 2.655
Registrato il: 03/04/2013
Utente Veteran
Excel 2000 - 2013
OFFLINE
06/02/2018 15:52

Buon pomeriggio, Chiara;
come promesso ho dato uno sguardo al tuo Codice VBA e, come pensavo, il problema era una banalità.

Prova a vedre l'istruzione:
 .Bookmarks("PROVA").Range.Text = PROVA 

PROVA viene considerata una Variabile; una Variabile ... vuota.
Modifica l'istruzione con:
 .Bookmarks("PROVA").Range.Text = Ragione_Sociale 


Dovrebbe funzionare.



A disposizione.

Buon Lavoro.

Giuseppe

Windows XP - Excel 2000
Windows 10 - Excel 2013
Post: 73
Registrato il: 22/12/2017
Città: MILANO
Età: 44
Utente Junior
Excel2016
OFFLINE
07/02/2018 10:36

hai ragione...grazie molte come sempre
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 19:45. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com