Elenco documenti in foglio excel

Anonimo
2012-07-12T13:34:51+00:00

Buona sera

ho un lavoro abbastanza complesso da fare e con il vostro aiuto mi piacerebbe portarlo a termine. Probabilmente aprirò diversi post per risolvere ogni singola questione, intanto ve lo espongo.

Quello che devo fare è unire parte di diversi file word in un unico file. Ora, guardando un po' in giro in rete ho letto che "forse" il mio lavoro si potrebbe risolvere in questo modo.

In un foglio excel creare un elenco tramite codice VBA dei file *.doc che voglio unire. In un secondo foglio dargli un ordine. e quindi con una macro di word unire i documenti.

Vado a descrivere quello che ho fatto fino adesso:

  • ho creato un nuovo file excel
  • questo file non si trova in un path fisso (cambia di volta in volta)
  • la cartella che contiene questo file contiene anche i file *.doc che devo unire (quindi hanno lo stesso path)
  • ho creato (con l'aiuto di diversi forum) questo codice che mi carica il nome dei file doc nel foglio1......e qui ho il primo problema: non mi carica i file giusti e non capisco perchè... posto il codice:

Sub ElencoFileXls()

Perc = "U:\IT.12.XXXX\04-OFFERTE_CONTRATTO" <<<<<< Perc = ThisWorkbook.Path <<<<< entrambe le soluzioni non funzionano

Worksheets("Foglio1").Select

Range("A1").Select

With ActiveCell

Worksheets("Foglio1").Range(.Cells(1), .End(xlDown)).ClearContents

End With

ElencoFile Direct:=Perc, Estens:="*.Doc", Inicell:=ActiveCell

End Sub

Sub ElencoFile(ByVal Direct As String, ByVal Estens As String, Inicell As Range)

Dim i As Integer, f As String

ChDir Direct

f = Dir(Estens)

If f = "" Then Exit Sub

While f <> ""

i = i + 1

Inicell(i) = f

f = Dir

Wend

'Sheets("Elenco").Select

'Range("A1").Select

End Sub

Una volta sistemato questo problema, "speriamo di riuscirci"  :)  , il passo successivo sarebbe quello di ordinare tramite magari dei menù a tendina nel Foglio2 i documenti elencati da unire.

Intanto grazie per l'attenzione e spero a presto

Ciao

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2012-07-12T14:01:11+00:00

Ciao,

la macro che segue elenca in colonna A del foglio1 tutti i documenti word (estensione doc e docx) presenti nella cartella corrente del foglio excel (che ovviamente deve essere già stato salvato).


Sub ElencoWord()

    Dim sh As Worksheet

    Dim i As Long

    Dim strDocFile As String

    Set sh = ThisWorkbook.Worksheets("Foglio1")

    i = 1

    sh.Columns(i).ClearContents

    strDocFile = Dir(ThisWorkbook.Path & "\*.doc?")

    Do Until strDocFile = ""

        sh.Cells(i, 1).Value = strDocFile

        i = i + 1

        strDocFile = Dir

    Loop

    Set sh = Nothing

End Sub


David

La risposta è stata utile?

0 commenti Nessun commento

16 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2012-07-13T08:03:21+00:00

    Quello che devo fare è unire da 2 a n documenti in uno unico

    Allego 3 esempi di .doc

    https://skydrive.live.com/redir?resid=B0B49F425410C6EB!255

    https://skydrive.live.com/redir?resid=B0B49F425410C6EB!257

    https://skydrive.live.com/redir?resid=B0B49F425410C6EB!256

    In tutti i miei documenti "base .doc" ci sono delle pagine in comune: questo vuol dire che le prime 2 e le ultime 2 pagine sono uguali per tutti i documenti che devo unire.

    Quello che devo fare è prendere una volta sola le prime 2 pagine....poi le parti centrali dei documenti che vado a scegliere una volta ordinati nel mio file excel che allego https://skydrive.live.com/redir?resid=B0B49F425410C6EB!260 e poi una volta sola le ultime 2 pagine.

    Non so se si può fare utilizzando una struttura.

    Grazie intanto

    Ciao

    Dopo provo. Ma la domanda è: perchè passiamo per Excel? Ha un senso o posso fare tutto da Word?

    Grazie.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2012-07-13T06:47:08+00:00

    Quello che devo fare è unire da 2 a n documenti in uno unico

    Allego 3 esempi di .doc

    https://skydrive.live.com/redir?resid=B0B49F425410C6EB!255

    https://skydrive.live.com/redir?resid=B0B49F425410C6EB!257

    https://skydrive.live.com/redir?resid=B0B49F425410C6EB!256

    In tutti i miei documenti "base .doc" ci sono delle pagine in comune: questo vuol dire che le prime 2 e le ultime 2 pagine sono uguali per tutti i documenti che devo unire.

    Quello che devo fare è prendere una volta sola le prime 2 pagine....poi le parti centrali dei documenti che vado a scegliere una volta ordinati nel mio file excel che allego https://skydrive.live.com/redir?resid=B0B49F425410C6EB!260 e poi una volta sola le ultime 2 pagine.

    Non so se si può fare utilizzando una struttura.

    Grazie intanto

    Ciao

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2012-07-12T16:59:38+00:00

    Grazie mille David....

    funziona perfettamente...

    ti avevo già risposto subito ma ultimamente ho il pc che mi fa gli scherzi.

    Cmq sono già passato alla fase successiva e ho creato con cerca.vert nel foglio2 dei menù a tendina per definire l'ordine dei documenti...

    Ora devo passare alla fase unione dei documenti in un unico file. Posso continuare in questo post o preferite che ne apro uno nella sezione word?

    Grazie intanto

    Facciamo qui, grazie.

    Non ho capito se vuoi solo copia/incollare i documenti di Word uno sotto l'altro o creare una struttura di documenti.

    Grazie.

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2012-07-12T15:18:41+00:00

    Grazie mille David....

    funziona perfettamente...

    ti avevo già risposto subito ma ultimamente ho il pc che mi fa gli scherzi.

    Cmq sono già passato alla fase successiva e ho creato con cerca.vert nel foglio2 dei menù a tendina per definire l'ordine dei documenti...

    Ora devo passare alla fase unione dei documenti in un unico file. Posso continuare in questo post o preferite che ne apro uno nella sezione word?

    Grazie intanto

    La risposta è stata utile?

    0 commenti Nessun commento