Salvare foglio a scelta utente



  • Salvare foglio a scelta utente
    di Patrii (utente non iscritto) data: 25/10/2015 15:15:49

    Ciao a tutti ! Chiedo ancora il vostro aiuto perché ho consumato troppi neuroni e non sono capace (lo ammetto !) di scrivere l'istruzione VBA:
    ho un workbook con un foglio MENU e 12 fogli dei mesi.
    Sul MENU ho un command button che dovrebbe lanciare la seguente istruzione restando nel MENU:
    . inputbox "quale mese vuoi salvare ?"
    . inputbox "su quale cartella vuoi salvare il foglio ?"
    . l'utente indica "ottobre" e la cartella
    . salvo l'intero workbook (con le formule)
    . copia, incolla valori del foglio OTTOBRE
    . salva il foglio OTTOBRE come singolo workbook

    Ecco, non sono capace di far salvare il foglio senza renderlo attivo, oppure come si fa ad andare sul foglio indicato dall'utente ? E' possibile ?

    Grazie mille in anticipo,
    Patrizia
     
    Scusate se non inserisco il codice, ma non sono stata in grado di scriverlo !


  • N
    di alfrimpa data: 25/10/2015 17:04:09

    Ciao Patrizia

    Potresti provare con la sottostante macro che, ovviamente, costituisce un primo tentativo di risoluzione del tuo problema.

    Come vedi non era così difficile; io solo tradotto in VBA quelle che erano le tue indicazioni (se tu avessi usato il registratore macro avresti potuto avere utili suggerimenti).

    Va da sè che il codice andrebbe migliorato secondo le tue indicazioni/esigenze.

    Fammi sapere e se hai bisogno di ulteriori chiarimenti sono qua.

    Alfredo  
     
    Sub salva()
    Dim foglio As String
    Dim dir As String
    foglio = InputBox("Immettere foglio")
    dir = InputBox("Immettere Directory")
    Sheets(foglio).Select
    Cells.Copy
    Workbooks.Add
    ActiveSheet.Paste
    Range("a1").Select
    ActiveWorkbook.SaveAs Filename:=dir & foglio & ".xlsm", FileFormat:= _
            xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
    Workbooks(foglio).Close
    End Sub
    





  • Salvare foglio a scelta utente
    di Patri (utente non iscritto) data: 25/10/2015 17:55:38

    Grazie mollissime Alfredo, e grazie per il rimprovero.
    Hai ragione, ma sono andata in confusione.... Cercavo soluzioni complicate (come faccio ad andare al foglio che indica l'utente e farlo diventare Active.Sheet, etc.).
    Mi sono persa nel solito bicchiere d'acqua. Grazie ancora !!!
    Il punto é che sto aiutando un'amica che, speriamo, potrebbe avere un'assunzione a tempo indeterminato....
    Considerato che sei un'esperto, posso approfittare di te ancora ?
    Però devo aprire una nuova discussione per allegare il file...
    Grazie,
    Patrizia