Unire due file.pdf inseriti in due cartelle diverse

Versione Completa   Stampa   Cerca   Utenti   Iscriviti     Condividi : FacebookTwitter
nTdQ231201
00martedì 13 febbraio 2024 10:22
Con codice vba ho creato i file.pdf.
Questi file.pdf sono salvati in due cartelle diverse "Cartella1" e "Cartella2" create in C:\.
Come fare per creare un unico file.pdf unendo i due?
Preciso che non devo unire due file.pdf determinati.
Grazie
rex88
dodo47
00martedì 13 febbraio 2024 10:34
ciao
ne abbiamo già parlato e ti ho dato una soluzione QUI al post 38

saluti



nTdQ231201
00martedì 13 febbraio 2024 10:42
Non mi funziona la chiamata della di:
"Call MergePDFs(mFiles, NewName")
che si trova in
Private Sub CreaPdf_Click()
perchè nel file non la trova.
dodo47
00martedì 13 febbraio 2024 10:49
il link a quella routine lo trovi al post #3 e lo ha pubblicato tu.

Devi leggere tutto il post Rex.....

nTdQ231201
00martedì 13 febbraio 2024 13:04
Mi riferivo a questo:
1) cambia il nome della
Private Function MergePDFs(arrFiles() As String, strSaveAs As String) As Boolean

in

Public Function MergePDFs(arrFiles() As String, strSaveAs As String) As Boolean
e la metti in un modulo standard

EDIT

Ricompongo il file e lo allego.
dodo47
00martedì 13 febbraio 2024 16:47
ciao
questo è il file con il codice che unisce i pdf....

Va da se che ci vuole acrobat professional...

saluti

Uso: una volta aperta la UForm, clicca sul pulsante Browse in alto e scegli i file da unire
NB: se sono nella stessa cartella li puoi selezionare entrambi con il tasto ctrl, altrimenti prima ne selezioni uno e poi, ripremendo browse, selezioni l'altro da un'altra cartella.
Si potrebbe evitare quasto anda e rianda ma non mi va di farlo.

Una volta scelti i due file, click in basso su cartella di destinazione - scegliere la cartella dove salvare il file unito - scrivere nella casella nome file, il nome con cui si vuole salvare il pdf unito, SENZA estensione





nTdQ231201
00martedì 13 febbraio 2024 18:09
Ciao Domenico,
il file funziona.

Adesso cerco di fare questo.

In C:\ si trova la cartella "PDF".

Nella cartella "PDF" si trovano due sottocartelle ""PDF1", "PDF2".

Clicco sul pulsante "Browse" e apro la cartella "PDF" e poi apro le sottocartelle e prelevo i file.pdf da unire.

Un consiglio:

dopo aver unito i due file e creato uno nuovo, posso eliminare i due file oppure faccio un pasticcio?

EDIT

Scusami mi ero dimenticato di ringraziarti.

Erano rimasti nel mosue.
dodo47
00martedì 13 febbraio 2024 18:23
ciao
il file UNITO è un file a se stante cui non servono i due originali.

Se ti sei accertato che il file UNITO è stato salvato potresti pure eliminarli i singoli...eventualmente puoi sempre separare il file unito per ricostruirli

saluti



nTdQ231201
00martedì 13 febbraio 2024 20:22
Ok
Grazie per il consiglio.
rex88
nTdQ231201
00venerdì 16 febbraio 2024 14:30
Nel post del giorno 13/02/2024 18:09 avevo detto che cercavo di fare questo:

cliccare sul pulsante "Browse" e aprire la cartella "PDF" salvata in C:\ nella quale si trovano due sottocartelle "PDF1" e "PDF2”.

Ho fatto questo come riportato nel file allegato però non sono riuscito ad integrarlo nella sub

Private Sub cmApriBrowser_Click()

che si trova sulla Userform1.

Allego il file ApriPdfInC.xslm" e la cartella zippata "PDF" da inserire in C:\.

L'ultimo step di questa diuscussione è unire ad esempio "FILEPDF1" con "FILEPDF4" e salvarlo nella sottocartella "PDF2”.
dodo47
00venerdì 16 febbraio 2024 18:30
nel tuo file allegato (a parte i pdf) non cè la UserForm e nemmeno il codice.

Usa il mio l'allegato al post #6 visto che funziona.

saluti




nTdQ231201
00venerdì 16 febbraio 2024 20:23
Queto è il tuo file.
nTdQ231201
00venerdì 16 febbraio 2024 23:21
Non ho detto che non userò il tuo file cerco soltanto di apportare a quella sub la modifica he mi consenta di fare quello che ho inserito nel post.

Sempre se possibile.
nTdQ231201
00sabato 17 febbraio 2024 08:15
Volevo ulteriormente chiarire che lo scopo della modifica da me proposta al codice che sta sul pulsante Browse e che purtroppo ho provato a fare senza riuscirci è quella di eliminare qualche passaggio ed arrivare direttamente alle due sottocartelle “FILE1” e “FILE2” che si trovano nella cartella “PDF” in C:\.
Il resto funziona.
nTdQ231201
00sabato 17 febbraio 2024 08:46
Ciao Domenico,

ho riletto il tuo post del 13/02/2024 16:47 con allegato il file da te predisposto e ti chiedo scusa se insisto in quanto mi avevi già fatto presente che non vi era altro da fare e quindi non vado oltre.

Continuerò a provare e riprovare cercando una soluzione.

Grazie.

Un saluto

rex88
dodo47
00sabato 17 febbraio 2024 09:58
se lo scopo è quello di far aprire il browser su una determinata cartella, usa CheckDir (leggi QUI

saluti



nTdQ231201
00sabato 17 febbraio 2024 10:12
Ciao,
il problema è come e dove inserire la parte di codice nella tua sub.
Tutto qui.
Come ho già detto in tutta sincerità ad oggi non ci sono ancora riuscito.
dodo47
00sabato 17 febbraio 2024 18:15
ciao
hai poca volontà, in fin dei conti basta leggere gli esempi sul web.

Nella Private Sub cmApriBrowser_Click(), prima di result=Application.GetOpenFilename(....

ci scrivi

ChDir "C\Percorso Dove Vuoi Che Si Apra Il FileDialog"

Lo stesso, se vuoi, nella Private Sub CmdDest_Click(), cambiando il percorso

Il tutto mi sembra comunque una questione di lana caprina, considerando che i file li hai in due cartelle diverse e non nella stessa

saluti





nTdQ231201
00sabato 17 febbraio 2024 19:41
Ciao Domenico,

da quando mi hai inviato il file, ho provato a farlo da solo e come ho già detto non ci sono riuscito.

Ho girato in rete consultando anche i forum inglesi traducendo in italiano le discussioni trovate.

Come si apre una directory e come si cercano i file nelle sottocartelle lo so fare.

Ma quella riga di codice che mi hai segnalato non capivo dove inserirla.

Credimi non è stata pigrizia.

Inserisco nel tuo file e poi ti comunico.

Grazie sempre per la tua disponibilità.

Un saluto

rex88
nTdQ231201
00domenica 18 febbraio 2024 10:44
Ciao,

in questa discussione volevo inserire un post per stampare il file pdf ricavato dall'iunione di due file pdf.

Cercando nel forum ho trovato questa discussione

https://www.freeforumzone.com/d/11322230/stampa-PDF/discussione.aspx

nella quale ho trovato la sub proposta da dodo47 26/10/2016 19:54.

Prima di proseguire chiedo se posso continuare in questa discussione o aprirne un'altra con un titolo più specifico.

EDIT

Mi ero dimenticato di dire che unire due file pdf funziona.




nTdQ231201
00domenica 18 febbraio 2024 17:25
Come fare perchè nella m.Lista venga riportato sono il nome del file pf, esempio FILEPDF1 e non C:\PDF\PDF1\FILEPDF1
dodo47
00domenica 18 febbraio 2024 18:08
Re:
rex88 (nTdQ231201), 18/02/2024 17:25:

Come fare perchè nella m.Lista venga riportato sono il nome del file pf, esempio FILEPDF1 e non C:\PDF\PDF1\FILEPDF1



Andrebbe rivisto il codice in più punti in quanto le stringhe contenenti gli indirizzi vengono poste in un array che a sua volta viene passato alla
Public Function MergePDFs(arrFiles() As String, strSaveAs As String) As Boolean

Suggerimento: accontentati; poi, se vuoi farlo in autonomia padronissimo di farlo.

saluti




nTdQ231201
00domenica 18 febbraio 2024 18:39
Accolgo il tuo consiglio.
nTdQ231201
00lunedì 19 febbraio 2024 09:17
Ho fatto questo.
Ho inserito sulla listbox mLista questa sub:
Private Sub mLista_Click()
Dim nRiga As Long
nRiga = Me.mLista.ListIndex
If nRiga >= 0 Then
Me.DestFile = Me.mLista.List(nRiga, 0)
End If
Call Nome_File
End Sub

Inserisce il file selezionato nella textbox DestFile

Poi nella rete
https://www.forumexcel.it/forum/threads/estrarre-parte-del-testo-del-percorso-file.42388/
ho trovato questa sub che richiamo dalla suddetta sub
Sub Nome_File()
Dim percorso As String
Dim a As Integer
Dim FileName As String
percorso = "C:\PDF\PDF1\FILEPDF1.pdf"
a = InStrRev(percorso, "\")
FileName = Replace(Right(percorso, Len(percorso) - a), ".pdf", "")
MsgBox FileName
End Sub


Clicco una sola volta sulla listbox m.Lista e:
1) si popola la textbox DestFile;
2) esce il messaggio con il nome del file senza il percorso e senza l’estensione .pdf.

Adesso dovrei riuscire ad inserire il file “FILEPDF1” nella textbox .

Se possibile avere qualche dritta.

EDIT

Allego immagine della UserForm1

Ho risolto inserendo

Me.DestFile = FileName

dopo

FileName = Replace(Right(percorso, Len(percorso) - a), ".pdf", "")

nTdQ231201
00martedì 20 febbraio 2024 10:12
L'ultimo passaggio sarebbe quello di inserire nella textbox "DestFile" il none del file senza il percorso come risulta dalla finestra del messaggio.
nTdQ231201
00mercoledì 21 febbraio 2024 18:10
Non avendo alcun riscontro ai miei ultimi post, ritengo di non continuare ad insistere e mi fermo qui.

Ringrazio Domenico per i consigli dati.

Chiedo di consentirmi di aprire una nuova discussione con altro oggetto.

rex88
nTdQ231201
00giovedì 22 febbraio 2024 09:17
Siccome prima di aprire una nuova discussione bisogna chiudere quelle ancora aperte, si può chiudere questa come risolta per le motivazioni ripportate nel mio precedente post?.

Grazie
Questa è la versione 'lo-fi' del Forum Per visualizzare la versione completa clicca qui
Tutti gli orari sono GMT+01:00. Adesso sono le 05:30.
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com