Salvare in xls e xlsx



  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 21/12/2014 19:47:50

    Ciao a tutti, ho un problema che spero qualcuno possa aiutarmi a risolvere: ho la necessita di salvare dei file con macro in .xls e contemporaneamente e automaticamente in formato .xlsx nella stessa cartella o in un altra specifica: qualcuno riesce a risolvere questo problema? Grazie e saluti.



  • di Raffaele_53 (utente non iscritto) data: 22/12/2014 17:27:01

    Se usi Excel 2003, non puoi salvare in Xlsx

    Comunque non ho capito molto, desideri salvare il file dove stai lavorando in Xls e Xlsx?
    Se stai usando Excel maggiore di 2003 (con all'interno del codice si chiamera .XLSM)

    Se lo salvi in Xls, avrai il codice all'interno però avrai solo 65.000 righe e 256 colonne (perdendo tutto il resto "magari anche il codice", comprese formattazioni/formule non supportate in Excel 2003). Xlsx senza codice lo potrai salvare.


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 22/12/2014 17:31:14

    Ciao Raffaele, con Excel 2003 posso salvarlo anche in .xlsx avendo il la pach Office 2007 Compatibilità.exe: ti spiego meglio cosa vorrei: vorrei che quando utilizzo il file .xls e faccio delle modifiche, premendo SALVA mi salvarre normalemnte il file e mi creasse una copia identica del file in .xlsx
    Grazie e saluti.



  • di Raffaele_53 (utente non iscritto) data: 22/12/2014 20:23:27

    Se ho capito bene, apri un file Excel-2003 = nome.Xls+codice

    Questo codice salva nella "stessa cartella" un file .xlsx
    Il nome viene cambiato con lo stesso nome + la data (se desideri l'orario devo rivedere)

    Inoltre salva il files stesso (quello che hai appena modificato)
    Ps. non so se funziona con la Tua pach Office 2007 Compatibilità.exe
     
    Sub salva_xlsx()
    Dim Path As String, Nome As String
    Path = ThisWorkbook.Path & ""
    Nome = Left(ThisWorkbook.Name, InStr(ThisWorkbook.Name, ".") - 1) & "_" & Day(Date) & "_" & Month(Date) & "_" & Year(Date) & ".xlsx"
    Application.DisplayAlerts = False
    ThisWorkbook.SaveCopyAs Filename:=Path & Nome
    ActiveWorkbook.SaveAs , CreateBackup:=False
    Application.DisplayAlerts = True
    ActiveWorkbook.Close
    End Sub


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 22/12/2014 21:11:01

    Ciao Raffaele,
    ho fatto delle prove sia su Excel 2003 che su Excel 2013: la macro funziona perche' crea il file quando la eseguo: pero' il file che genera non si apre con Office 2003 che con Office 2013: riesci a risolvere perche' e questo quello che mi serve?
    P.S. Quando da il nome al file che crea la data a me non serve.
    Grazie e saluti.



  • di Raffaele_53 (utente non iscritto) data: 22/12/2014 23:41:06

    Per quanto riguarda la data, basta togliere --->& "_" & Day(Date) & "_" & Month(Date) & "_" & Year(Date)
    Per quanto riguarda il formato....
    Avvia il registratore e salva fisicamente un file in .xlsx e ferma il registartore.
    Dopo sposta la stringa che Ti ha creato.


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 23/12/2014 09:28:16

    Ciao Raffaele, per il nome del file ok: per quanto riguarda la stringa spero che sia questa quella che ti interessa. Grazie e saluti.

     
    Sub Macro1()
    '
    ' Macro1 Macro
    ' Macro registrata il 23/12/2014 da Ibm T43
    '
    
    '
        ActiveWorkbook.SaveAs Filename:= _
            "C:Documents and SettingsIbmT43DesktopDropboxNuova cartellaConsumi benzina Harley Davidson Sportster Xl 1200 R Roadstar 2.xlsx" _
            , FileFormat:=51, Password:="", WriteResPassword:="", _
            ReadOnlyRecommended:=False, CreateBackup:=False
    End Sub



  • di Raffaele_53 (utente non iscritto) data: 23/12/2014 10:51:19

    Il bello che ieri sera ho provato -->FileFormat:=51 e non mi funzionava.
    Adesso sembra funzionare....
    Premessa ho messo -->Application.DisplayAlerts = False/true per non visualizzare i messaggi Excel (quando sei sicuro togli la spunta iniziale). Prova con questa
     
    Sub salva_xlsx()
    Dim Path As String, Nome As String
    Path = ThisWorkbook.Path & ""
    Nome = Left(ThisWorkbook.Name, InStr(ThisWorkbook.Name, ".")) & "xlsx"
    'Application.DisplayAlerts = False
    ActiveWorkbook.SaveAs , CreateBackup:=False 'qui salvo il file corrente
    ActiveWorkbook.SaveAs Filename:=Path & Nome, FileFormat:=51, ReadOnlyRecommended:=False, CreateBackup:=False ' qui salvo la copia xlsx
    'Application.DisplayAlerts = True
    ActiveWorkbook.Close ' non posso mettere d'uscire da excel (perchè se hai altri file aperti li chiude tutti)
    End Sub


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 23/12/2014 11:07:26

    Ciao Raffaele, perfetto: hai realizzato quello che mi serviva:ora una modifica per renderlo perfetto: puoi far partire la macro automaticamente quando salvo il file? Grazie e saluti.



  • di Raffaele_53 (utente non iscritto) data: 23/12/2014 11:24:17

    Sempre che sia in un modulo, non ricordo per 2003, se basta rinominare la sub in --->Sub Auto_close ()


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 23/12/2014 11:41:08

    Ciao Raffaele, no non basta rinomina la sub in Auto_close: quando salvo e poi chiudo non mi crea nessun file. Riesci a trovare una soluzione per favore? Grazie e saluti.



  • di Raffaele_53 (utente non iscritto) data: 23/12/2014 11:53:19

    Tu salvi...., che non serve a nulla (dato che nel codice c'è scritto di salvare tutti due)
    Comunque salva e poi chiudi excel sulla X e dovrebbe funzionare.

    Comunque prova a spostare il codice dal modulo in (sulla sinistra dentro ThisWorkboot, vedi un nome differente dai fogli) col nome Sub Workbook_BeforeClose()



  • di Raffaele_53 (utente non iscritto) data: 23/12/2014 11:57:23

    ??? Hai salvato il file prima di chiudere con auto_close
    Poi se desideri salvare TU, il codice l'ho rifà qualche secondo dopo.


  • Salvare in .xls e . xlsx
    di Anonimo (utente non iscritto) data: 23/12/2014 12:19:27

    ciao Raffaele, rinominando la Sib in Sib Workbook_Befoteclose mi da errore mentre come prima non crea nessun file sia con macro nel foglio sia in thisworkbook. grazie e saluti



  • di Raffaele_53 (utente non iscritto) data: 23/12/2014 13:08:11

    Mi spiace, a me funziona sia con auto_close sia in MODULO, che in chiusura dentro thisworkbook.
    Per adesso non so cosa dire....in thisworkbook
     
    Sub Workbook_BeforeClose()
    Dim Path As String, Nome As String
    Path = ThisWorkbook.Path & ""
    Nome = Left(ThisWorkbook.Name, InStr(ThisWorkbook.Name, ".")) & "xlsx"
    'Application.DisplayAlerts = False
    ActiveWorkbook.SaveAs , CreateBackup:=False 'qui salvo il file corrente
    ActiveWorkbook.SaveAs Filename:=Path & Nome, FileFormat:=51, ReadOnlyRecommended:=False, CreateBackup:=False ' qui salvo la copia xlsx
    'Application.DisplayAlerts = True
    ActiveWorkbook.Close ' non posso mettere d'uscire da excel (perchè se hai altri file aperti li chiude tutti)
    End Sub


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 23/12/2014 13:43:59

    Ciao Raffaele, ringraziando il clielo con il Molulofunziona: mentre nel foglio auto_close non va, e nel thisworkbook con Workbook_BeforeClose() non funziona: comunque funzionando nel Modulo per me va bene. Ora due cose:
    1) se non salvo io, la Macro chiude e crea il file ma su nessuno di tutti e due i file prende le ultime modifiche senza salvataggio: puoi fare in modo che se chiudo senza salvare mi salva il file .xls con le modifiche fatte e mi crea il file .xlsx sempre con le modifiche fatte ?
    2) se volessi salvare il file .xlsx in un altra cartella quale modifica devo fare?
    Grazie e saluti.



  • di Raffaele_53 (utente non iscritto) data: 23/12/2014 22:35:42

    Chi Ti capisce è bravo
    >>>Molulofunziona, ........................pertanto auto_close funziona?

    Comunque >>>il file .xlsx in un altra cartella
    Path significa dove salvare
    EX Path = "C:pincopallino"....... però deve chiudere col "" finale


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 23/12/2014 22:40:07

    Ciao Raffaeele,
    scusa stavo con il tablet per strada; con il Modulo Auto_close funziona. Provo la EX Path = "C:pincopallino"....... e ti faccio sapere. Grazie mille ancora e saluti.


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 23/12/2014 22:56:18

    ciao Raffaele,
    purtroppo mi da errore, forse sbaglio qualcosa: puoi dargli cortesemente un occhiata?
    Grazie e saluti.

     
    Sub Auto_Close()
    Dim Path As String, Nome As String
    Path = ThisWorkbook.Path & ""
    Nome = Left(ThisWorkbook.Name, InStr(ThisWorkbook.Name, ".")) & "xlsx"
    Application.DisplayAlerts = False
    ActiveWorkbook.SaveAs , CreateBackup:=False 'qui salvo il file corrente
    ActiveWorkbook.SaveAs Filename:="C:Documents and SettingsIbm T43DocumentiDropboxNuova cartellaVecchia", FileFormat:=51, ReadOnlyRecommended:=False, CreateBackup:=False ' qui salvo la copia xlsx
    Application.DisplayAlerts = True
    ActiveWorkbook.Close ' non posso mettere d'uscire da excel (perchè se hai altri file aperti li chiude tutti)
    End Sub


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 24/12/2014 08:22:55

    Ciao Raffaele alla fine c'e' l'ho fatta a farlo funzionare: allego la macro modificata che nomia in automatico il file che crea con lo stesso nome del file di partenza. Puoi cortesemente fare una modifica? Praticamente se non salvo io, la Macro chiude e crea il file ma le ultime modifiche senza salvataggio le riporta solo su file creato in xlsx e non su file in xls: puoi fare in modo che se chiudo senza salvare mi salva anche il file .xls con le modifiche fatte? Grazie e saluti.
     
    Sub Auto_Close()
    Dim Path As String, Nome As String
    Path = ThisWorkbook.Path & ""
    Nome = Left(ThisWorkbook.Name, InStr(ThisWorkbook.Name, ".")) & "xlsx"
    Application.DisplayAlerts = False
    ActiveWorkbook.SaveAs , CreateBackup:=False 'qui salvo il file corrente
    'ActiveWorkbook.SaveAs Filename:=Path & Nome, FileFormat:=51, ReadOnlyRecommended:=False, CreateBackup:=False ' qui salvo la copia xlsx nella stessa cartella del file xls
    ActiveWorkbook.SaveAs Filename:="C:Documents and SettingsIbm T43DocumentiDropboxNuova cartellaVecchia" & Nome & "", FileFormat:=51, ReadOnlyRecommended:=False, CreateBackup:=False ' qui salvo la copia xlsx in una determinata cartella
    Application.DisplayAlerts = True
    ActiveWorkbook.Close ' non posso mettere d'uscire da excel (perchè se hai altri file aperti li chiude tutti)
    End Sub



  • di Raffaele_53 (utente non iscritto) data: 24/12/2014 18:05:40

    Non riesco a seguriti....
    Path significa dove vai a salvare

    Ex io ho preso dove è stato aperto il file con Path = ThisWorkbook.Path
    Se Tu scrivi Path = "C:Excel-prova", ricordando di mettere il "" finale.
    Excel va a salvare nella cartella (naturale che la cartella esista)

    per il nome "vedi il codice"


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 25/12/2014 08:07:05

    Buon giorno Raffaele, e Auguri di Buon Natale. Il codice funziona: ora cortesemente volevo una modifica: praticamente se non salvo io, e chiudo premendo la X in alto a destra, la Macro chiude e crea il file ma le ultime modifiche senza salvataggio le riporta solo su file creato in xlsx e non su file in xls: puoi fare in modo che se chiudo senza salvare premendo la X in alto a destra mi salva anche il file .xls con le modifiche fatte? Grazie e saluti.



  • di Raffaele_53 (utente non iscritto) data: 26/12/2014 21:23:28

    Non saprei cosa dire, a me salva tutti due (hai messo il codice in un modulo?)


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 26/12/2014 21:35:23

    Ciao Raffaele, si ho messo il codice in modulo. Che sarà? Grazie e saluti.



  • di Raffaele53 (utente non iscritto) data: 27/12/2014 14:22:36

    Prova a mettere (forse differenze d'Excel) al posto di
    >>>ActiveWorkbook.SaveAs , CreateBackup:=False 'qui salvo il file corrente
    ActiveWorkbook.Save , CreateBackup:=False 'qui salvo il file corrente


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 27/12/2014 14:31:32

    Ciao Raffaele, se tolgo As mi fa errore quando premo la X in alto destra. Che cavolo sara'...... Grazie e saluti.



  • di Raffaele_53 (utente non iscritto) data: 27/12/2014 14:49:23

    Non si dovrebbe chiudere con la X, ....prova a farlo fisicamente Excel salva....
    Il file si salva pure se premi Excel "salva"

    DOPO, Prova a togliere >>> ,CreateBackup:=False <<< e vediamo cosa succede?

    Ps. mi stà venendo un dubbio? Hai solo Auto_close oppure altre macro?


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 27/12/2014 14:57:55

    Ciao Raffaele, tolto CreateBackup:=False, ma se non premo salva ma solo la X in alto a destra, continua a crearmi il file .xlsx con le modifiche fatte ma non mi salva il file .xls con le modifiche. Si i file dove metto questo tuo codice hanno altre macro. Mi sono proprio scocciato: ho speso quasi 1.000,00 Euro tra pc con Windows 8.1 e smartphone con Windows Phone 8.1 per avere piu problemi di prima con un vecchio notebook con Xp e uno smartphone con Windows Mobile 6.5............... Scusa lo sfogo, ma sono 7 giorni che sto sbattendo la testa su due problemi con questi 2 nuovi strumenti................ Grazie ancora e saluti.



  • di Raffaele_53 (utente non iscritto) data: 29/12/2014 12:13:16

    Non saprei cosa dire, fai l'ultimo tentativo.
    Apri il file .xls e fai una qualsiasi modifica.
    Avvia il registratore e premi in excel-salva e chiudi il registartore
    Alla fine sposta il codice


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 29/12/2014 12:46:33

    Ciao Raffaele, ha ricreato un secondo modulo con questo. Grazie e saluti.
     
    Sub Macro1()
    '
    ' Macro1 Macro
    ' Macro registrata il 29/12/2014 da Ibm T43
    '
    
    '
        Sheets("Spese Mensili").Select
        ActiveWorkbook.Save
    End Sub



  • di Raffaele_53 (utente non iscritto) data: 30/12/2014 12:01:52

    La stringa che hai spostato è regolare >>>>ActiveWorkbook.Save
    Ps. Riduci la finestra Excel + l'Editor in modo da visualizzale sul monitor contemporaneamente.
    Sulla finestra Editor premi F8, vedrai che la riga Sub Auto_Close() diventa gialla
    Ora ripremi F8 e vedrai la seconda riga gialla, ora ripremi F8 altre volte e subito dopo della riga ActiveWorkbook.Save
    Il Tuo file dovrebbe essere già salvato.

    Riprova con questo codice (altro non saprei fare), dopo togli le spunte alle due righe 'Application....
    Fammi sapere anche se non ho altre idee? Non so se sia per il "FileFormat:=51", anche a me non funziona in ThisWorkbook con Sub Workbook_BeforeClose()
     
    Sub Auto_Close()
    Dim Path As String, Nome As String
    Path = ThisWorkbook.Path & ""
    Nome = Left(ThisWorkbook.Name, InStr(ThisWorkbook.Name, ".")) & "xlsx"
    'Application.DisplayAlerts = False
    ActiveWorkbook.Save 'qui salvo il file corrente
    ActiveWorkbook.SaveAs Filename:=Path & Nome, FileFormat:=51, ReadOnlyRecommended:=False, CreateBackup:=False ' qui salvo la copia xlsx
    'Application.DisplayAlerts = True
    ActiveWorkbook.Close ' non posso mettere d'uscire da excel (perchè se hai altri file aperti li chiude tutti)
    End Sub


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 30/12/2014 15:27:48

    Ciao Raffaele, adesso funziona: sbaglio ho hai tolto solo As da ActiveWorkbook.SaveAs? Grazie e saluti.



  • di raffaele_53 (utente non iscritto) data: 30/12/2014 19:32:00

    Forse il problema era>>>CreateBackup:=False

    Il problema per me era usare 2007 con 2003 più l'applicattivo aggiunto che NON conosco.
    Felice d'aver risolto, non è solo AS anche ThisWorkbook con il Sub Workbook_BeforeClose() che non mi funziona


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 30/12/2014 19:36:43

    Ciao Raffaele, strano perche anch io avevo provato senza CreateBackup:=False ma lo stesso non andava........ chissa.......... comunque un ultima domanda, riesci a fare la stessa cosa anche per un file word (.doc) che quando chiudo crea un file .docx? Grazie e saluti.



  • di raffaele_53 (utente non iscritto) data: 30/12/2014 19:50:08

    Apri un nuovo post per word (non lo conosco bene)


  • Salvare in .xls e .xlsx
    di Anonimo (utente non iscritto) data: 30/12/2014 19:52:15

    Ciao Raffaele, su questo forum? Grazie e saluti.