› Sviluppare funzionalita su Microsoft Office con VBA › Macro per selezione intervallo righe da input box
-
AutoreArticoli
-
Ciao a tutti!
Sono un nuovo iscritto purtroppo senza alcuna o quasi competenza di programmazione.
Avrei la necessità di ricevere aiuto in merito alla realizzazione di una macro da inserire all'interno di un file Excel che mi permetta attraverso una input box, con la quale andare a chiedere all'utente di scegliere quale/i righe del file Excel vuole selezionare ed importarne il contenuto all'interno di un file Word attraverso una stampa unione.
Ho un file Excel che utilizzo come sorta di DB ed ho un file Word già predisposto per ricevere i dati all’interno di alcune tabelle.
La Macro che sono riuscito a realizzare mi permette di selezionare dal DB (file Excel) una riga a mia scelta dalla quale prelevare i dati ed importarli nel file Word (fin qui nessun problema, funziona correttamente).
Avrei bisogno invece di poter selezionare più righe ed ottenere per ciascuna di esse un singolo file Word.Allego i files in questione.
Allegati:
You must be logged in to view attached files.Potresti provare con Application.InputBox che ti permette di selezionare direttamente dal foglio le righe o il range, per capire prova questo codice
Sub a() Dim rng As Range Set rng = Application.InputBox(prompt:="select range to copy", Type:=8) rng.Copy Sheets(2).Range("A1") End Sub
No, ho bisogno di selezionare di volta in volta righe differenti.
Questo perché essendo il mio foglio Excel composto da centinaia di righe, mi sarebbe comodo poter scegliere per quali di esse andare ad importare i dati nel file Word.
Perdonami ma sono assolutamente non esperto di programmazione (quello che sono riuscito a fare fino ad ora è frutto di diversi copia ed incolla di codici presi da esempi vari).
Questo è il codice della mia Macro, potresti indicarmi come potrei modificarlo?
Ti ringrazio.
Sub StampaWord() Dim xWord As Object Dim wdFileName As Variant Dim xTab As Object ' Oggetto Tabella data Dim xTab1 As Object ' Oggetto Tabella sez a1 Dim xTab2 As Object ' Oggetto Tabella sez a2 Dim xTab3 As Object ' Oggetto Tabella sez a3 Dim xTab4 As Object ' Oggetto Tabella sez a4 Dim xTab5 As Object ' Oggetto Tabella riepilogo sezioni Dim xTab6 As Object ' Oggetto Tabella riepilogo sezioni Dim NumTotRows1 As Long 'NUMERO DI RIGHE DATABASE Dim I As Integer 'INDICE Dim risp As String Dim nriga As String Application.ScreenUpdating = False ' Serve per disabilitare i saltellamenti dello schermo (macro più veloci) Set Wb = ActiveWorkbook With Wb Set WsG = Sheets("Check") End With NumTotRows1 = WsG.Range("AO" & Rows.Count).End(xlUp).Row wdFileName = Application.GetOpenFilename() If wdFileName = False Then Exit Sub 'user cancelled import file browser ciclo: I = 2 risp = InputBox("Inserisci la riga che vuoi importare:", "Numero della pratica", "Numero cliente") If risp <> "" Then If Not IsNumeric(risp) Then MsgBox risp & " è una stringa, devi digitare un numero" GoTo ciclo Else End If nriga = risp If nriga <= 1 Then MsgBox risp & " è un numero inferiore a 2, devi digitare un numero superiore" GoTo ciclo Else End If For I = 2 To NumTotRows1 If I = nriga Then Set xWord = CreateObject("Word.Application") xWord.Documents.Open wdFileName Set xTab = xWord.ActiveDocument.Tables(1) Set xTab1 = xWord.ActiveDocument.Tables(2) Set xTab2 = xWord.ActiveDocument.Tables(3) Set xTab3 = xWord.ActiveDocument.Tables(4) Set xTab4 = xWord.ActiveDocument.Tables(5) Set xTab5 = xWord.ActiveDocument.Tables(6) Set xTab6 = xWord.ActiveDocument.Tables(8) xTab.Rows(1).Cells(2).Range.Text = WsG.Cells(NumTotRows1 + 2, 2) xTab1.Rows(2).Cells(2).Range.Text = WsG.Cells(1, 2) xTab1.Rows(2).Cells(3).Range.Text = WsG.Cells(I, 2) xTab1.Rows(3).Cells(2).Range.Text = WsG.Cells(1, 3) xTab1.Rows(3).Cells(3).Range.Text = WsG.Cells(I, 3) xTab1.Rows(4).Cells(2).Range.Text = WsG.Cells(1, 4) xTab1.Rows(4).Cells(3).Range.Text = WsG.Cells(I, 4) xTab1.Rows(5).Cells(2).Range.Text = WsG.Cells(1, 5) xTab1.Rows(5).Cells(3).Range.Text = WsG.Cells(I, 5) xTab1.Rows(6).Cells(2).Range.Text = WsG.Cells(1, 6) xTab1.Rows(6).Cells(3).Range.Text = WsG.Cells(I, 6) xTab1.Rows(7).Cells(2).Range.Text = WsG.Cells(1, 7) xTab1.Rows(7).Cells(3).Range.Text = WsG.Cells(I, 7) xTab1.Rows(8).Cells(2).Range.Text = WsG.Cells(1, 8) xTab1.Rows(8).Cells(3).Range.Text = WsG.Cells(I, 8) xTab1.Rows(9).Cells(2).Range.Text = WsG.Cells(1, 9) xTab1.Rows(9).Cells(3).Range.Text = WsG.Cells(I, 9) xTab1.Rows(10).Cells(2).Range.Text = WsG.Cells(1, 10) xTab1.Rows(10).Cells(3).Range.Text = WsG.Cells(I, 10) xTab1.Rows(11).Cells(2).Range.Text = WsG.Cells(1, 11) xTab1.Rows(11).Cells(3).Range.Text = WsG.Cells(I, 11) xTab1.Rows(12).Cells(2).Range.Text = WsG.Cells(1, 12) xTab1.Rows(12).Cells(3).Range.Text = WsG.Cells(I, 12) xTab1.Rows(13).Cells(2).Range.Text = WsG.Cells(1, 13) xTab1.Rows(13).Cells(3).Range.Text = WsG.Cells(I, 13) xTab2.Rows(3).Cells(2).Range.Text = WsG.Cells(1, 14) xTab2.Rows(3).Cells(3).Range.Text = WsG.Cells(I, 14) xTab2.Rows(4).Cells(2).Range.Text = WsG.Cells(1, 15) xTab2.Rows(4).Cells(3).Range.Text = WsG.Cells(I, 15) xTab3.Rows(3).Cells(2).Range.Text = WsG.Cells(1, 16) xTab3.Rows(3).Cells(3).Range.Text = WsG.Cells(I, 16) xTab3.Rows(4).Cells(2).Range.Text = WsG.Cells(1, 17) xTab3.Rows(4).Cells(3).Range.Text = WsG.Cells(I, 17) xTab3.Rows(5).Cells(2).Range.Text = WsG.Cells(1, 18) xTab3.Rows(5).Cells(3).Range.Text = WsG.Cells(I, 18) xTab3.Rows(6).Cells(2).Range.Text = WsG.Cells(1, 19) xTab3.Rows(6).Cells(3).Range.Text = WsG.Cells(I, 19) xTab3.Rows(7).Cells(2).Range.Text = WsG.Cells(1, 20) xTab3.Rows(7).Cells(3).Range.Text = WsG.Cells(I, 20) xTab3.Rows(8).Cells(2).Range.Text = WsG.Cells(1, 21) xTab3.Rows(8).Cells(3).Range.Text = WsG.Cells(I, 21) xTab3.Rows(9).Cells(2).Range.Text = WsG.Cells(1, 22) xTab3.Rows(9).Cells(3).Range.Text = WsG.Cells(I, 22) xTab3.Rows(10).Cells(2).Range.Text = WsG.Cells(1, 23) xTab3.Rows(10).Cells(3).Range.Text = WsG.Cells(I, 23) xTab3.Rows(11).Cells(2).Range.Text = WsG.Cells(1, 24) xTab3.Rows(11).Cells(3).Range.Text = WsG.Cells(I, 24) xTab3.Rows(12).Cells(2).Range.Text = WsG.Cells(1, 25) xTab3.Rows(12).Cells(3).Range.Text = WsG.Cells(I, 25) xTab3.Rows(13).Cells(2).Range.Text = WsG.Cells(1, 26) xTab3.Rows(13).Cells(3).Range.Text = WsG.Cells(I, 26) xTab3.Rows(14).Cells(2).Range.Text = WsG.Cells(1, 27) xTab3.Rows(14).Cells(3).Range.Text = WsG.Cells(I, 27) xTab3.Rows(15).Cells(2).Range.Text = WsG.Cells(1, 28) xTab3.Rows(15).Cells(3).Range.Text = WsG.Cells(I, 28) xTab3.Rows(16).Cells(2).Range.Text = WsG.Cells(1, 29) xTab3.Rows(16).Cells(3).Range.Text = WsG.Cells(I, 29) xTab3.Rows(17).Cells(2).Range.Text = WsG.Cells(1, 30) xTab3.Rows(17).Cells(3).Range.Text = WsG.Cells(I, 30) xTab3.Rows(18).Cells(2).Range.Text = WsG.Cells(1, 31) xTab3.Rows(18).Cells(3).Range.Text = WsG.Cells(I, 31) xTab4.Rows(2).Cells(2).Range.Text = WsG.Cells(1, 36) xTab4.Rows(2).Cells(3).Range.Text = WsG.Cells(I, 36) xTab4.Rows(3).Cells(2).Range.Text = WsG.Cells(1, 37) xTab4.Rows(3).Cells(3).Range.Text = WsG.Cells(I, 37) xTab4.Rows(4).Cells(2).Range.Text = WsG.Cells(1, 38) xTab4.Rows(4).Cells(3).Range.Text = WsG.Cells(I, 38) xTab4.Rows(5).Cells(2).Range.Text = WsG.Cells(1, 39) xTab4.Rows(5).Cells(3).Range.Text = WsG.Cells(I, 39) xTab4.Rows(6).Cells(2).Range.Text = WsG.Cells(1, 40) xTab4.Rows(6).Cells(3).Range.Text = WsG.Cells(I, 40) xTab4.Rows(7).Cells(2).Range.Text = WsG.Cells(1, 41) xTab4.Rows(7).Cells(3).Range.Text = WsG.Cells(I, 41) xTab5.Rows(2).Cells(1).Range.Text = WsG.Cells(1, 32) xTab5.Rows(2).Cells(2).Range.Text = WsG.Cells(I, 32) xTab6.Rows(1).Cells(1).Range.Text = WsG.Cells(1, 33) xTab6.Rows(1).Cells(2).Range.Text = WsG.Cells(I, 33) xTab6.Rows(2).Cells(1).Range.Text = WsG.Cells(1, 34) xTab6.Rows(2).Cells(2).Range.Text = WsG.Cells(I, 34) xTab6.Rows(3).Cells(1).Range.Text = WsG.Cells(1, 35) xTab6.Rows(3).Cells(2).Range.Text = WsG.Cells(I, 35) xWord.ActiveDocument.SaveAs wdFileName & I & ".doc" xWord.ActiveDocument.Close xWord.Quit Exit Sub End If Next I Else MsgBox "La riga non corrisponde a nessun cliente" End If Application.ScreenUpdating = True End Sub
L'obiettivo del forum è di aiutare a risolvere i problemi, non di fornire soluzioni pronte, se vuoi imparare il VBA trovi un corso in fondo alla pagina
Non chiedevo la soluzione pronta, ma semplicemente di capire il codice che mi hai suggerito cosa dovrebbe sostituire del mio....
Potresti copiare le righe selezionate in un altro foglio e poi su questo fare un ciclo che le esplora tutte ed utilizza il codice già scritto con le opportune modifiche, non è una cosa semplice e richiede un po' di tempo
Se hai intenzione di imparare e ci provi qui siamo sempre disponibili ad aiutarti
Ciao, sono riuscito finalmente ad arrivare ad una soluzione definitiva che mi permette di raggiungere l'obiettivo che mi ero prefissato.
Avrei però un'ultima esigenza, ovvero, poter convertire automaticamente tutti i file Word generati in file PDF.
Qualcuno potrebbe darmi indicazioni in merito?
Sarebbe gentile da parte tua condividere la soluzione col forum, per il resto puoi risolvere con una semplice ricerca su google del tipo "vba word to pdf"
Ho risolto andando a prevedere una colonna aggiuntiva all'interno del mio file Excel nella quale sono andato ad indicare lo "STATO" in cui si trovano le pratiche.
Fatto questo, con un semplice ciclo For vado a selezionare solo quelle righe che contengono nella colonna "STATO" la parola "EVASA" per poi procedere alla generazione del file Word.
Al momento, non sapendo come andare a generare contemporaneamente anche i files PDF, ho risolto con una macro che mi converte in PDF tutti i file Word generati e presenti all'interno della cartella nella quale si trova il file Excel.
Al momento, non sapendo come andare a generare contemporaneamente anche i files PDF, ho risolto con una macro che mi converte in PDF tutti i file Word generati e presenti all'interno della cartella nella quale si trova il file Excel.
Volevo chiarire ulteriormente rispetto a quest'ultima problematica...
La cartella nella quale si trova il mio file Excel contiene anche il file "modello" di Word utilizzato per effettuare la stampa unione.
Ciò comporta il fatto che quando voglio andare a generare i files pdf, in automatico mi carica anche il file "modello" e ne crea appunto la rispettiva copia in PDF.
Ci sarebbe una soluzione per escludere dalla conversione solo il file "modello"?
Il nome del file modello lo conosci, quindi devi nel ciclo escludere i file con quel nome.
Se alleghi la macro che usi possiamo provare a modificarla
Il file modello si chiama "Tabella di check.doc"
Questa invece è la macro che utilizzo attualmente per salvare i file in pdf:
Option Explicit Sub create_pdf() Dim wdApp As Object Dim wdDoc As Object Dim fso As Object Dim f As Object Dim src As String, dest As String, s As String Set wdApp = CreateObject("Word.Application") Set fso = CreateObject("Scripting.FileSystemObject") src = "C:\Users\marko\Desktop\Macro" For Each f In fso.GetFolder(src).Files If Right(f.Name, 3) = "doc" Or Right(f.Name, 4) Like "doc*" Then Set wdDoc = wdApp.Documents.Open(CStr(f), Visible:=False) s = Left(f.Name, InStrRev(f.Name, ".") - 1) wdDoc.ExportAsFixedFormat OutputFilename:="C:\Users\marko\Desktop\Macro\Checklists\" & "" & s & ".pdf", ExportFormat:=17 '17=wdExportFormatPDF wdDoc.Close End If Next wdApp.Quit Set wdDoc = Nothing Set wdApp = Nothing Set f = Nothing MsgBox "Tutti i files Word sono stati convertiti in PDF!" End Sub
f.name è il nome del file trovato, basta modificare così
Option Explicit Sub create_pdf() Dim wdApp As Object Dim wdDoc As Object Dim fso As Object Dim f As Object Dim src As String, dest As String, s As String Set wdApp = CreateObject("Word.Application") Set fso = CreateObject("Scripting.FileSystemObject") src = "C:\Users\marko\Desktop\Macro" For Each f In fso.GetFolder(src).Files If Right(f.Name, 3) = "doc" Or Right(f.Name, 4) Like "doc*" Then '<<<<<<<<<<<< If f.name <> "Tabella di check.doc" Then Set wdDoc = wdApp.Documents.Open(CStr(f), Visible:=False) s = Left(f.Name, InStrRev(f.Name, ".") - 1) wdDoc.ExportAsFixedFormat OutputFilename:="C:\Users\marko\Desktop\Macro\Checklists\" & "" & s & ".pdf", ExportFormat:=17 '17=wdExportFormatPDF wdDoc.Close End If End If Next wdApp.Quit Set wdDoc = Nothing Set wdApp = Nothing Set f = Nothing MsgBox "Tutti i files Word sono stati convertiti in PDF!" End Sub
Ciao, torno nuovamente a chiedere aiuto in quanto mi si è presentata l'esigenza di salvare con un nome ben preciso i singoli files word generati. In sostanza, dovrei andare a leggere, per ogni riga selezionata (solo quelle che contengono nella colonna "STATO" la parola "EVASA") il contenuto di una particolare cella ed utilizzarlo appunto come nome per il file word generato.
Qualche idea?
Grazie.
Come avevo scritto in precedenza, avevo risolto il mio problema andando a prevedere una colonna aggiuntiva all'interno del mio file Excel nella quale sono andato ad indicare lo "STATO" in cui si trovano le pratiche.
Fatto questo, con un semplice ciclo for, vado a selezionare solo quelle righe che contengono nella colonna "STATO" la parola "EVASA" per poi procedere alla generazione del file Word per ogni rispettiva riga.
Avrei ora bisogno di poter salvare ogni singolo file Word generato, utilizzando come nome file il valore di una specifica cella presente nella riga stessa.
Spero di essere stato più chiaro adesso... 🙂
Non è chiaro cosa non riesci a fare, il ciclo for ? ricavare il nome ? qual'è la nuova macro che hai scritto ?
Il ciclo for che ho provato a scrivere è il seguente ma a quanto pare non funziona...
For I = 3 To NumTotRows1 If Cells(I, 1).Value = "EVASA" Then Set xWord = CreateObject("Word.Application") xWord.Documents.Open wdFileName Set xTab = xWord.ActiveDocument.Tables(1) Set xTab1 = xWord.ActiveDocument.Tables(2) Set xTab2 = xWord.ActiveDocument.Tables(3) Set xTab3 = xWord.ActiveDocument.Tables(4) Set xTab4 = xWord.ActiveDocument.Tables(5) Set xTab5 = xWord.ActiveDocument.Tables(6) Set xTab6 = xWord.ActiveDocument.Tables(8) xTab.Rows(1).Cells(2).Range.Text = WsG.Cells(1, 2) xTab1.Rows(2).Cells(2).Range.Text = WsG.Cells(2, 2) xTab1.Rows(2).Cells(3).Range.Text = WsG.Cells(I, 2) xTab1.Rows(3).Cells(2).Range.Text = WsG.Cells(2, 3) xTab1.Rows(3).Cells(3).Range.Text = WsG.Cells(I, 3) xTab1.Rows(4).Cells(2).Range.Text = WsG.Cells(2, 4) xTab1.Rows(4).Cells(3).Range.Text = WsG.Cells(I, 4) xTab1.Rows(5).Cells(2).Range.Text = WsG.Cells(2, 5) xTab1.Rows(5).Cells(3).Range.Text = WsG.Cells(I, 5) xTab1.Rows(6).Cells(2).Range.Text = WsG.Cells(2, 6) xTab1.Rows(6).Cells(3).Range.Text = WsG.Cells(I, 6) xTab1.Rows(7).Cells(2).Range.Text = WsG.Cells(2, 7) xTab1.Rows(7).Cells(3).Range.Text = WsG.Cells(I, 7) xTab1.Rows(8).Cells(2).Range.Text = WsG.Cells(2, 8) xTab1.Rows(8).Cells(3).Range.Text = WsG.Cells(I, 8) xTab1.Rows(9).Cells(2).Range.Text = WsG.Cells(2, 9) xTab1.Rows(9).Cells(3).Range.Text = WsG.Cells(I, 9) xTab1.Rows(10).Cells(2).Range.Text = WsG.Cells(2, 10) xTab1.Rows(10).Cells(3).Range.Text = WsG.Cells(I, 10) xTab1.Rows(11).Cells(2).Range.Text = WsG.Cells(2, 11) xTab1.Rows(11).Cells(3).Range.Text = WsG.Cells(I, 11) xTab1.Rows(12).Cells(2).Range.Text = WsG.Cells(2, 12) xTab1.Rows(12).Cells(3).Range.Text = WsG.Cells(I, 12) xTab1.Rows(13).Cells(2).Range.Text = WsG.Cells(2, 13) xTab1.Rows(13).Cells(3).Range.Text = WsG.Cells(I, 13) xTab2.Rows(3).Cells(2).Range.Text = WsG.Cells(2, 14) xTab2.Rows(3).Cells(3).Range.Text = WsG.Cells(I, 14) xTab2.Rows(4).Cells(2).Range.Text = WsG.Cells(2, 15) xTab2.Rows(4).Cells(3).Range.Text = WsG.Cells(I, 15) xTab3.Rows(3).Cells(2).Range.Text = WsG.Cells(2, 16) xTab3.Rows(3).Cells(3).Range.Text = WsG.Cells(I, 16) xTab3.Rows(4).Cells(2).Range.Text = WsG.Cells(2, 17) xTab3.Rows(4).Cells(3).Range.Text = WsG.Cells(I, 17) xTab3.Rows(5).Cells(2).Range.Text = WsG.Cells(2, 18) xTab3.Rows(5).Cells(3).Range.Text = WsG.Cells(I, 18) xTab3.Rows(6).Cells(2).Range.Text = WsG.Cells(2, 19) xTab3.Rows(6).Cells(3).Range.Text = WsG.Cells(I, 19) xTab3.Rows(7).Cells(2).Range.Text = WsG.Cells(2, 20) xTab3.Rows(7).Cells(3).Range.Text = WsG.Cells(I, 20) xTab3.Rows(8).Cells(2).Range.Text = WsG.Cells(2, 21) xTab3.Rows(8).Cells(3).Range.Text = WsG.Cells(I, 21) xTab3.Rows(9).Cells(2).Range.Text = WsG.Cells(2, 22) xTab3.Rows(9).Cells(3).Range.Text = WsG.Cells(I, 22) xTab3.Rows(10).Cells(2).Range.Text = WsG.Cells(2, 23) xTab3.Rows(10).Cells(3).Range.Text = WsG.Cells(I, 23) xTab3.Rows(11).Cells(2).Range.Text = WsG.Cells(2, 24) xTab3.Rows(11).Cells(3).Range.Text = WsG.Cells(I, 24) xTab3.Rows(12).Cells(2).Range.Text = WsG.Cells(2, 25) xTab3.Rows(12).Cells(3).Range.Text = WsG.Cells(I, 25) xTab3.Rows(13).Cells(2).Range.Text = WsG.Cells(2, 26) xTab3.Rows(13).Cells(3).Range.Text = WsG.Cells(I, 26) xTab3.Rows(14).Cells(2).Range.Text = WsG.Cells(2, 27) xTab3.Rows(14).Cells(3).Range.Text = WsG.Cells(I, 27) xTab3.Rows(15).Cells(2).Range.Text = WsG.Cells(2, 28) xTab3.Rows(15).Cells(3).Range.Text = WsG.Cells(I, 28) xTab3.Rows(16).Cells(2).Range.Text = WsG.Cells(2, 29) xTab3.Rows(16).Cells(3).Range.Text = WsG.Cells(I, 29) xTab3.Rows(17).Cells(2).Range.Text = WsG.Cells(2, 30) xTab3.Rows(17).Cells(3).Range.Text = WsG.Cells(I, 30) xTab3.Rows(18).Cells(2).Range.Text = WsG.Cells(2, 31) xTab3.Rows(18).Cells(3).Range.Text = WsG.Cells(I, 31) xTab4.Rows(2).Cells(2).Range.Text = WsG.Cells(2, 36) xTab4.Rows(2).Cells(3).Range.Text = WsG.Cells(I, 36) xTab4.Rows(3).Cells(2).Range.Text = WsG.Cells(2, 37) xTab4.Rows(3).Cells(3).Range.Text = WsG.Cells(I, 37) xTab4.Rows(4).Cells(2).Range.Text = WsG.Cells(2, 38) xTab4.Rows(4).Cells(3).Range.Text = WsG.Cells(I, 38) xTab4.Rows(5).Cells(2).Range.Text = WsG.Cells(2, 39) xTab4.Rows(5).Cells(3).Range.Text = WsG.Cells(I, 39) xTab4.Rows(6).Cells(2).Range.Text = WsG.Cells(2, 40) xTab4.Rows(6).Cells(3).Range.Text = WsG.Cells(I, 40) xTab4.Rows(7).Cells(2).Range.Text = WsG.Cells(2, 41) xTab4.Rows(7).Cells(3).Range.Text = WsG.Cells(I, 41) xTab5.Rows(2).Cells(1).Range.Text = WsG.Cells(2, 32) xTab5.Rows(2).Cells(2).Range.Text = WsG.Cells(I, 32) xTab6.Rows(1).Cells(1).Range.Text = WsG.Cells(2, 33) xTab6.Rows(1).Cells(2).Range.Text = WsG.Cells(I, 33) xTab6.Rows(2).Cells(1).Range.Text = WsG.Cells(2, 34) xTab6.Rows(2).Cells(2).Range.Text = WsG.Cells(I, 34) xTab6.Rows(3).Cells(1).Range.Text = WsG.Cells(2, 35) xTab6.Rows(3).Cells(2).Range.Text = WsG.Cells(I, 35) NomeFile = "Check_List" CF = Range("B3").Value xWord.ActiveDocument.SaveAs FileName:=CF & NomeFile & ".doc" xWord.ActiveDocument.Close xWord.Quit End If
-
AutoreArticoli