Condividi tramite

SALVA CON NOME

Anonimo
2015-06-07T22:47:13+00:00

Buonasera o buonanotte a tutti.

Scusate ma sto impazzendo..... Sto leggendo tanti post ma non riesco a trovare la soluzione al mio problema.

Di seguito vi spiego nel dettaglio:

Ho un file di ordini clienti che devo salvare con il nome del cliente e la data di creazione in questo formato:

COGNOME NOME  -  xx-xx-xxxx

nella cella F5 c'è il cognone e il nome e nella cella AA2 c'è la data

Come posso fare?

Grazie infinitamente e chi mi vorrà aiutare.

Alby

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

27 risposte

Ordina per: Più utili
  1. Anonimo
    2015-06-08T06:52:55+00:00

    Ciao confettimuccialberto,

    nella tua richiesta, visto anche i post successivi in cui dialoghi con Mauro (che saluto), ci sono alcuni punti da chiarire:

    1. Deve essere salvata col nome <Cognome Nome - gg-mm-aaaa> tuttala Cartella di lavoro (suppongo composta di più Fogli di lavoro)?...
    2. ... Oppure solo un Foglio di lavoro (suppongo quello di nome "- BUONO D'ORDINE ATTUALE")?
    3. Quando dovrà avvenire questo salvataggio: all'esecuzione di una macro? (Associata o meno a un Pulsante poco importa)

    Oltre alla possibilità di salvare la Cartella di lavoro con nuovo nome esistono anche i seguenti metodi:

    1. Sub SaveCopyAs([Filename])

        Membro di Excel.Workbook

    Salva una copia della cartella di lavoro in un file ma non modifica la cartella di lavoro aperta in memoria. 2. Sub SaveAs(Filename As String, [FileFormat], [Password], [WriteResPassword], [ReadOnlyRecommended], [CreateBackup], [AddToMru], [TextCodepage], [TextVisualLayout], [Local])

        Membro di Excel.Worksheet

    Salva le modifiche al foglio di lavoro in un file diverso.

    In base a ciò che ci hai illustrato il secondo metodo dovrebbe fare al caso tuo. Che ne dici?

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2015-06-08T05:24:55+00:00

    Esatto.

    Grazie

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2015-06-08T05:03:26+00:00

    Gent.mo MAURO, grazie per la risposta ma non sono riuscito a farla funzionare.

    <cut>

    Ma il foglio si chiama: - BUONO D'ORDINE ATTUALE ?

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2015-06-08T02:48:09+00:00

    Gent.mo MAURO, grazie per la risposta ma non sono riuscito a farla funzionare.

    Di seguito ti riporto i passaggi effettuati:

    • apro il file con il modello su cui voglio effettuare l'operazione;
    • digito alt+f11 e si apre una videta;
    • clicco su: VBAProject (- BUONO D'ORDINE ATTUALE.xls);
    • clicco su Moduli;
    • clicco 2 volte su Modulo1;
    • nella videata che si apre inserisco la seguente stringa:

    Public Sub m()

        Dim sh As Worksheet

        Set sh = ThisWorkbook.Worksheets("- BUONO D'ORDINE ATTUALE")

        With sh

            ThisWorkbook.SaveAs Filename:="C:\Users\ALBERTO\Dropbox\ORDINI ANDRIA" & _

                .Range("F5").Value & " - " & _

                Format(.Range("AA2"), "dd-mm-yyyy"), _

                FileFormat:=xlExcel8

        End With

        Set sh = Nothing

    End Sub

    • digito alt+f11 per tornale al file;
    • digito alt+f8
    • seleziono l'unica macro presente sotto il nome "m";
    • clicco su Esegui e mi esce una videata Microsoft Visual Basic con scritto:

    Errore di run-time "9"

    Indice non incluso nell'intervallo

    mi da tre tasti: Fine, Debug, ?

    clicco su Debug e mi esce la videata nella quale ho inserito il codice con evidenziata di giallo la seguete stringa:

    Set sh = ThisWorkbook.Worksheets("- BUONO D'ORDINE ATTUALE")

    Ora come risolvo?

    Spero sia riuscito a descrivere tutto bene e a farmi capire...

    GRAZIE

    La risposta è stata utile?

    0 commenti Nessun commento
  5. Anonimo
    2015-06-07T23:34:27+00:00

    Di seguito vi spiego nel dettaglio:

    Ho un file di ordini clienti che devo salvare con il nome del cliente e la data di creazione in questo formato:

    COGNOME NOME  -  xx-xx-xxxx

    nella cella F5 c'è il cognone e il nome e nella cella AA2 c'è la data

    Come posso fare?

    Copia/incolla questa macro in un modulo standard:

    Public Sub m()

        Dim sh As Worksheet

        Set sh = ThisWorkbook.Worksheets("Foglio1")

        With sh

            ThisWorkbook.SaveAs Filename:="**c:\PROVA**" & _

                .Range("F5").Value & " - " & _

                Format(.Range("AA2"), "dd-mm-yyyy"), _

                FileFormat:=xlExcel8

        End With

        Set sh = Nothing

    End Sub

    Modifica la parte in grassetto con il nome del tuo foglio e della Directory dove vuoi sia salvato il file e quindi lancia la macro.  Se non hai mai utilizzato il vba di Excel, vedi:

    La risposta è stata utile?

    0 commenti Nessun commento