Excel per MAC VBA una macro (che funzioni davvero con MAC) per nominare stampare un pdf da MAC.

Sguà 40 Punti di reputazione
2025-10-07T08:25:12.88+00:00

La riga
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:=miopath, Quality:=xlQualityStandard,IncludeDocProperties:=True, IgnorePrintAreas:=False, openafterpublish:=true
Often it does not work (even after strictly checking the FileName "miopath" ) and selecting a pdf printer: the file is printed in an unknown location (spotlight does not find it) or, otherwise, it is allocated to the correct destination, but the is saved the excel program itself, instead of the desired single worksheet
Is there a limit to the number of folder nesting? (in my case is 7 before the file name)
Is there a special font to insert before the file name?
Thanks to everybody helping

Microsoft 365 e Office | Excel | Per il lavoro | MacOS
0 commenti Nessun commento

Risposta accettata dall'autore della domanda
Anonimo
2025-10-07T11:27:34.46+00:00

Questa risposta è stata tradotta automaticamente. Di conseguenza, potrebbe contenere errori grammaticali o espressioni strane.

Ciao stefano guadagni

Grazie per aver contattato il forum Microsoft Q&A e per aver condiviso la riga VBA che stai utilizzando.

Si prega di notare che questo è il forum it-it. Consigliamo gentilmente di pubblicare la tua domanda in italiano in modo che più membri della community possano aiutarti. In alternativa, puoi anche considerare di pubblicare sul forum en-us se preferisci utilizzare la lingua inglese. Apprezziamo sinceramente la tua comprensione.

Se ho capito correttamente il tuo problema, stai cercando di creare una macro VBA affidabile che esporti solo un singolo foglio attivo come PDF, lo nomini correttamente e lo salvi in un percorso specificato su macOS.

Ho testato questo sul mio Mac per cercare di riprodurre il tuo scenario, e sono riuscito a farlo funzionare con successo, anche con percorsi di cartelle profondi (7 livelli di nidificazione). Nel mio test, ho creato una struttura di cartelle come /Users/abc/Desktop/VBA-test/1/2/3/4/5/6/7/, ho eseguito la macro su una cartella di lavoro di esempio con più fogli, e il PDF esportato includeva correttamente solo il foglio attivo, salvato nella cartella esatta prevista. I percorsi di cartelle profondi (anche 7 livelli) hanno funzionato bene nel mio test, ma è buona pratica mantenere i percorsi gestibili per evitare eventuali stranezze specifiche dell'app.

Immagine dell'utente

Puoi considerare di seguire questa macro VBA modificata che ha funzionato nel mio test:

Sub ExportSheetAsPDF_Mac()
    Dim pdfPath As String
    Dim sheetName As String
    sheetName = ActiveSheet.Name
    pdfPath = "/Users/abc/Desktop/VBA-test/1/2/3/4/5/6/7/" & "Test01" & ".pdf"
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
        FileName:=pdfPath, _
        Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, _
        OpenAfterPublish:=True
End Sub

Per assicurarti che il tuo FileName sia accurato, copia il percorso completo di una cartella o file:

Apri Finder e vai al file o alla cartella in Finder > Fai clic destro (o Control-clic) sul file/cartella > poi tieni premuto il tasto Opzione per rivelare l'opzione del percorso completo > Seleziona Copia "[Nome File/Cartella]" come Nome percorso e incollalo direttamente nel tuo codice VBA come valore FileName (ad esempio, nella variabile pdfPath qui sotto).

Se ho frainteso la tua situazione, non esitare a chiarire, e adatterò le mie raccomandazioni di conseguenza. Non vedo l'ora di vedere la tua risposta presto.


Se la risposta è utile, fai clic su "Accetta risposta" e gentilmente votala positivamente. Se hai ulteriori domande su questa risposta, fai clic su "Commenta".

Nota: Segui i passaggi nella nostra documentazione per abilitare le notifiche e-mail se desideri ricevere la notifica e-mail relativa a questo thread.

La risposta è stata utile?

1 persona ha trovato utile questa risposta.

0 risposte aggiuntive

Ordina per: Più utili

Risposta

Le risposte possono essere contrassegnate come "Accettata" dall'autore della domanda e "Consigliata" dai moderatori, in modo da consentire agli utenti di sapere che la risposta ha risolto il problema dell'autore.