Salvare foglio excel con nome di caselle

Versione Completa   Stampa   Cerca   Utenti   Iscriviti     Condividi : FacebookTwitter
Daniele=18
00martedì 22 maggio 2018 21:52
Buonasera a tutti,
mi sono appena iscritto, per cercare di risolvere un problema, che vado ad esporre.
Ho la necessità, quando salvo un foglio excel, che mi si apra la finestra classica del salvataggio, dopo posso dare il nome e la cartella in cui lo voglio memorizzare, ma il nome dovrebbe essere già formattato, con un valore ottenuto concatenando 2 celle del foglio.
Grazie a chi mi potrà aiutare.

Daniele G
GiuseppeMN
00martedì 22 maggio 2018 22:24
Buona sera, Daniele;
sarebbe opportuno allegassi sempre un file (senza Dati sensibili) con alcuni Record significativi già inseriti e chiarissi ciò che desideri ottenere.
Questo eviterebbe a chi desidera aiutarti dover ricostruire una probabile struttura con il rischio di non centrare l'obiettivo.



A disposizione.

Buona serata.

Giuseppe
Daniele=18
00mercoledì 23 maggio 2018 17:25
Buonasera Giuseppe, e grazie per l'interessamento.
In realtà non ho ancora il mio foglio excel, ma quello che voglio ottenere si può simulare semplicemente:
Si apre Excel per creare un nuovo documento, si valorizza a caso 2 celle (ad esempio in A:1 ci scrivo la stringa "Documento", e in B:1 ci scrivo una data 23-05-2018).
A questo punto premendo sul pulsante che salva il file, vorrei che si aprisse la classica finestra di salvataggio, con il nome file già formattato : "Documento23-05-2081", in modo che l'utende debba solamente scegliere la cartella dove salvarlo.
Spero di essermi spiegato al meglio.
Grazie ancora

Daniele G
GiuseppeMN
00giovedì 24 maggio 2018 06:43
Buona giornata, Daniele;
potresti provare con:
Option Explicit

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim Pth As String, Fll As String
Application.EnableEvents = False
    Pth = Application.InputBox("Inserire la directory")
        Fll = Pth & Cells(1, 1) & "-" & Day(Cells(1, 2)) & "-" & Month(Cells(1, 2)) & "-" & Year(Cells(1, 2)) & ".xlsm"
Application.DisplayAlerts = False
        ChDir Pth
    ActiveWorkbook.SaveAs Filename:=Fll
Application.EnableEvents = True
Application.DisplayAlerts = True
End Sub



Buon Lavoro.

Giuseppe
dodo47
00giovedì 24 maggio 2018 11:43
Ciao
qualora volessi "scegliere" la cartella di salvataggio e non digitarla, potresti usare:

Sub SaveSheet_As()
Dim NewName As Variant
Nome = Range("A1") & " " & Range("B1") & ".xlsx"
NewName = Application.GetSaveAsFilename( _
InitialFileName:=ActiveWorkbook.Path & "\" & _
Nome, FileFilter:="Excel Workbooks (*.xlsx), *.xlsx")
If NewName=False Then Exit Sub
ActiveSheet.Copy
ActiveWorkbook.SaveAs Filename:=NewName, FileFormat:=xlOpenXMLWorkbook
ActiveWorkbook.Close
End Sub


NOTA BENE

Manca l'individuazione di eventuali errori, primo tra tutti l'esistenza del file nella cartella di destinazione.

saluti



Questa è la versione 'lo-fi' del Forum Per visualizzare la versione completa clicca qui
Tutti gli orari sono GMT+01:00. Adesso sono le 17:57.
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com