Risultati da 1 a 10 di 10

Discussione: Problemi con macro che salva in pdf



  1. #1
    L'avatar di Gavino
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Sardegna
    Messaggi
    9
    Versione Office
    2013
    Likes ricevuti
    1

    Problemi con macro che salva in pdf

    Buonasera a tutti, ora espongo il mio problema nella speranza che mi possiate dare una mano. Come si evince questa macro mi salva in pdf il foglio "Casa" nella dir scelta e il foglio casa non compare in alcun modo e quindi tutto ok. Io gradirei che il foglio "Casa" non comparisse anche quando per esempio vado come da macro a salvare nella cartella il Pdf ma a un certo punto decido di cliccare sul tasto annulla o anche di chiudere la schermata di comando che mi si presenta perchè mi sono accorto che ce qualche errore nel foglio "Casa".
    Questa è la macro che funziona a dovere, ma se clicco su annulla o chiudi il foglio "Casa" mi compare.
    Penso ci voglia una If o variabili, ma sinceramente non so' proprio come fare. Grazia in anticipo a tutti.

    Private Sub Image6_Click()
    'Con questo comando salvo il file in PDF


    With ThisWorkbook.Worksheets("Casa")
    Application.ScreenUpdating = False
    .Visible = xlSheetVisible



    Set objFSO = CreateObject("Scripting.FileSystemObject")
    InitialFoldr$ = "C:\VALORE\" 'Startup folder
    With Application.FileDialog(msoFileDialogFolderPicker) 'User input for folder to look at
    .InitialFileName = Application.DefaultFilePath & "\"
    .Title = "Seleziona la cartella di salvataggio"
    .InitialFileName = InitialFoldr$
    .Show

    If .SelectedItems.Count = 0 Then Exit Sub
    mfolder = .SelectedItems(1) & "\"
    End With
    MsgBox "Complimenti il tuo documento e stato salvato correttamente"

    With Worksheets("Casa")
    'sNome = .Range("G8").Value & _
    '" " & .Range("K12").Value & _
    '" " & Format(.Range("K13").Value, "dd-mm-yyyy") & _
    '" " & .Range("E3").Value
    sNome = Format(.Range("G8").Value, "") & " N° " & .Range("K12").Value
    fname = mfolder & "\" & sNome & ".pdf"
    .ExportAsFixedFormat _
    Type:=xlTypePDF, Filename:=fname, _
    Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, _
    OpenAfterPublish:=False

    End With

    .Visible = xlSheetVeryHidden
    Application.ScreenUpdating = True
    End With


    End Sub

  2. #2
    L'avatar di zio_tom
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Veneto
    Messaggi
    525
    Versione Office
    2010 - Win10
    Likes ricevuti
    63
    Likes dati
    17
    allega il file!!!
    senza dati sensibli
    altrimenti è difficile seguirti

    la cosa sembrerebbe banale.... alla fine seleziona un altro foglio
    dovresti mostrare il codice del form con cui dai "Annulla"
    n°3 - Win10pro + Office 2010 ----- n°1 - Win7pro + Office 2010 ----- n°1 - WinXPpro + Office 2010

  3. #3
    L'avatar di Gavino
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Sardegna
    Messaggi
    9
    Versione Office
    2013
    Likes ricevuti
    1
    Scusa ma per schermata di comando non intendo un form ma questa che ti allego di esplora risorse dove sono indicati il tasto Annulla e chiudi (X)
    https://www.dropbox.com/s/49meiargne...mando.jpg?dl=0

  4. #4
    L'avatar di A.Maurizio
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Torino
    Età
    56
    Messaggi
    383
    Versione Office
    2013
    Likes ricevuti
    44
    Likes dati
    0
    Ciao Gavino , mi chiamo Maurizio, Anche io vorrei provare a dare il mio contributo a questa tua richiesta .
    Ma con tutta Onestà : Devo dare Ragione a Zio_Tom , in quanto non solo la tua richiesta e piene di errori ; ma e spiegata in un modo poco comprensobile .
    Per qui ti precherei di Scrivere anche solo le fasi Salienti della tua Richiesta , con Calma ; Badando più che altro a chiarire bene che cosa vuoi effettivamente .
    In quanto non ho capito se Vuoi Imparare a Salvare un Documento ; Vuoi Aprire poi quel tipo di Documento ; ho vuoi semplicemente Poterlo Inviare in Automatico una volta Aperto .
    Spiegati meglio ; e vedrai che presto qualcuno sapra darti una mano in merito ; Ciao e Grazie da Maurizio

  5. #5
    L'avatar di Gavino
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Sardegna
    Messaggi
    9
    Versione Office
    2013
    Likes ricevuti
    1
    Allora vediamo se questa volta riesco ad essere più chiaro:
    La macro allegata fa correttamente il suo lavoro ossia una volta avviata
    1) apre il foglio "Casa" che in precedenza era nascosto
    2) apre in automatico la schermata che ho allegato con precedente link http://www.dropbox.com/s/49meiargnes...mando.jpg?dl=0
    3) scelgo la cartella dove salvare il foglio "Casa"
    4) il foglio "Casa" viene nascosto
    Problema: Mettiamo che quando al punto 2 mi accorgo per qualsiasi motivo che non intendo più salvare il file e quindi esco dalla schermata o con il tasto annulla o con il tasto chiudi [X] attualmente non mi viene nascosto il foglio "Casa" come al punto 4.
    Il mio desiderio invece sarebbe che il foglio "Casa" rimanesse ugualmente nascosto perchè non ho portato a termine l'operazione di salvataggio.
    Spero di essere stato chiaro

  6. #6
    L'avatar di Gavino
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Sardegna
    Messaggi
    9
    Versione Office
    2013
    Likes ricevuti
    1
    Saluti, ho risolto domani allego macro funzionante e migliorata :87:_:176:

  7. #7
    L'avatar di Gavino
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Sardegna
    Messaggi
    9
    Versione Office
    2013
    Likes ricevuti
    1
    Ecco la macro corretta

    Private Sub Image6_Click()
    'Con questo comando salvo il file in PDF

    With ThisWorkbook.Worksheets("Casa")
    Application.ScreenUpdating = False
    .Visible = xlSheetVisible


    Set objFSO = CreateObject("Scripting.FileSystemObject")
    InitialFoldr$ = "C:\VALORE\" 'Startup folder
    With Application.FileDialog(msoFileDialogFolderPicker) 'User input for folder to look at
    .InitialFileName = Application.DefaultFilePath & "\"
    .Title = "Seleziona la cartella di salvataggio"
    .InitialFileName = InitialFoldr$
    .Show

    If .SelectedItems.Count = 0 Then GoTo uscita
    mfolder = .SelectedItems(1)
    End With

    sNome = Format(.Range("G8").Value, "") & " N° " & .Range("K12").Value
    fname = mfolder & "\" & sNome & ".pdf"
    .ExportAsFixedFormat _
    Type:=xlTypePDF, Filename:=fname, _
    Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, _
    OpenAfterPublish:=False


    MsgBox "Complimenti il tuo documento e stato salvato correttamente"

    uscita:

    .Visible = xlSheetVeryHidden
    Application.ScreenUpdating = True
    End With

    End Sub

    Grazie comunque del Vs impegno nell'aver cercato di darmi una mano.

  8. I seguenti utenti hanno dato un "Like"


  9. #8
    L'avatar di Gavino
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Sardegna
    Messaggi
    9
    Versione Office
    2013
    Likes ricevuti
    1
    Spiego modifica essenziale:

    If .SelectedItems.Count = 0 Then Exit Sub
    è diventato

    If .SelectedItems.Count = 0 Then GoTo uscita
    ed in fondo prima della riga:

    .Visible = xlSheetVeryHidden
    inserisci una nuova riga con:
    ho inserito

    uscita:

    Inoltre per rendere la risposta MsgBox in linea con i tempi della macro la riga è stata spostata prima di "uscita:"
    Infinela seconda copia " With Worksheets("Casa") / End With " E' stata tolta visto che è ancora valida quella di apertura " With ThisWorkbook.Worksheets("Casa") / End With ".
    Inoltre nel nome del file avevo inserito un doppio separatore "\" , una prima volta con " mfolder = .SelectedItems(1) & "\" " e poi ancora con " fname = mfolder & "\" & sNome & ".pdf" "

  10. #9
    L'avatar di A.Maurizio
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Torino
    Età
    56
    Messaggi
    383
    Versione Office
    2013
    Likes ricevuti
    44
    Likes dati
    0
    Bravo Gavino , Vedo con piacere che hai trovato la soluzione al tuo problema , in quanto rispetto al primo Listato hai apportato la sola modifica di un Uscita Forzata con il Goto Uscita.
    Ma secondo il mio modesto parere sè avessi anche solo messo tra parentesi quel Fatitico ( 0 ) o Semplicemente usato
    ( "" ) avresti ottenuto la Stessa Cosa.

    Esempio : If .SelectedItems.Count = "0" Oppure Semplicemente "" Then GoTo uscita
    mfolder = .SelectedItems(1)
    End With

    Ciaoda A.Maurizio

  11. I seguenti utenti hanno dato un "Like"


  12. #10
    L'avatar di Gavino
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Sardegna
    Messaggi
    9
    Versione Office
    2013
    Likes ricevuti
    1
    Certo Maurizio il tuo suggerimento è molto valido, lo userò sicuramnete in qualche nuova macro.
    Un saluto e alla prossima

Discussioni Simili

  1. [Risolto] Correzione macro salva file
    Di Vincenzo Damiani nel forum Domande su Excel VBA e MACRO
    Risposte: 3
    Ultimo Messaggio: 24/02/17, 08:24
  2. Macro che salva foglio in pdf prendendo il nome da una cella
    Di Fagor nel forum Domande su Excel VBA e MACRO
    Risposte: 13
    Ultimo Messaggio: 15/02/17, 08:40
  3. Macro in Excel per Mac salva in pdf
    Di FABIOGALLIANI nel forum Domande su Excel VBA e MACRO
    Risposte: 18
    Ultimo Messaggio: 29/05/16, 21:13
  4. crea cartella + salva nomefile.xlsm + salva nomefile.pdf
    Di Tequila nel forum Domande su Excel VBA e MACRO
    Risposte: 7
    Ultimo Messaggio: 20/05/16, 21:46
  5. Problemi di macro
    Di LELLOMARINI nel forum Domande su Excel VBA e MACRO
    Risposte: 1
    Ultimo Messaggio: 15/04/16, 13:02

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •