| | Post: 1 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
30/08/2014 13:40 | |
Salve a tutti vengo subito al mio dilemma
non ho molta dimestichezza con excell e vengo in vostro aiuto
esiste una macro che fa automaticamente tutto in maniera automatica
queste condizioni ho un file excell
dove ho un foglio "DATI" e nelle celle
B2 Ho il nome con cui vorrei salvare il file in questione
in J2 ho concatenato il percoso dove vorrei salvare il file
"la directory non esiste" e vorrei crearla automaticamente
ora vorrei sapere e e fattibile o e solo un mio sogno
Un ringraziamento anticipato ciao.
|
|
| | Post: 799 | Registrato il: 27/06/2011
| Utente Senior | excel 2007 | | OFFLINE |
|
30/08/2014 13:54 | |
sì è fattibile
Se vuoi provare a vedere come si fa, puoi provare ad usare il registratore di macro
ciao
Frank
Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
Excel 2007 forse anche 2013 ... 2021 ... 365 e future... |
| | Post: 1 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
30/08/2014 14:57 | |
potresti essere un tantino piu precisa sono una schiappa |
| | Post: 189 | Registrato il: 21/06/2013
| Città: NAPOLI | Età: 70 | Utente Junior | Excel 365 | | OFFLINE |
|
30/08/2014 15:31 | |
Ciao
Excel dispone di uno strumento denominato "registratore di macro" che consente di "tradurre" in codice visual Basic tutte le azioni svolte manualmente dall'utente.
Quello che intendeva dire Tanimon (che saluto) era proprio di avvalersi di tale possibilità ed una volta sviluppato il codice cercare di adattarlo alle proprie necessità.
Per attivare il registratore macro devi andare nella scheda Sviluppo ed attivare "Registra macro"
Ora mi fermo perché altrimenti dovrei scrivere un post chilometrico.
Fai comunque riferimento alla guida in linea di Excel che in molti casi aiuta molto.
Alfredo
Alfredo |
| | Post: 2.244 | Registrato il: 28/06/2011
| Città: AGORDO | Età: 70 | Utente Veteran | 2013 | | OFFLINE | |
|
30/08/2014 15:41 | |
Un saluto a tanimon
Si può fare, prima ci sono alcune domande
1)In B2 hai un nome ex pippo.xlsx, oppure solo pippo?
2)In J2 hai un percorso ex C:\Users\xxxx\Documents\ e desideri creare una nuova directory nella cartella Documents
Oppure il files dove c'è il foglio DATI risiede fisicamente in una Cartella EX C:\Excel
3)Se la cartella esiste già non si può crearla
4)Devi salvare solo il foglio DATI in un files nuovo col nome di B2
Excel 2013 |
| | Post: 2 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
30/08/2014 15:45 | |
e come se stessi parlando in aramaico
cel'hai qualcosa da scopiazzare |
| | Post: 2.608 | Registrato il: 13/03/2012
| Città: LIVORNO | Età: 78 | Utente Veteran | 2010 | | OFFLINE | |
|
30/08/2014 15:49 | |
fai prima ad allegare il file zippato e te lo restituiamo con la macro [Modificato da patel45 30/08/2014 16:08]
----------
Win 10 - Excel 2010
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta |
| | Post: 3 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
30/08/2014 15:50 | |
raffaele1953, 30/08/2014 15:41:
Un saluto a tanimon
Si può fare, prima ci sono alcune domande
1)In B2 hai un nome ex pippo.xlsx, oppure solo pippo?
2)In J2 hai un percorso ex C:\Users\xxxx\Documents\ e desideri creare una nuova directory nella cartella Documents
Oppure il files dove c'è il foglio DATI risiede fisicamente in una Cartella EX C:\Excel
3)Se la cartella esiste già non si può crearla
4)Devi salvare solo il foglio DATI in un files nuovo col nome di B2
nella cartella B2 e testo Concatenato
il file risiede in un hdd esterno es: I:\clienti\NOMEinJ2\NomeB2.xlx
in modo da creare cartella e file in una mossa sola
|
| | Post: 4 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
30/08/2014 15:52 | |
patel45, 30/08/2014 15:49:
fai prima ad allegare il file e te lo restituiamo con la macro
il file non posso ma un esempio su un altro foglio andrebbe bene
|
| | Post: 6 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
30/08/2014 16:05 | |
patel45, 30/08/2014 15:49:
fai prima ad allegare il file e te lo restituiamo con la macro
ok ma preferire evitare domande al riguardo chi lo trova utile lo puo usare per se ma non e gradita la divulgazione http://im4.freeforumzone.it/up/40/40/1292041840.zip[Modificato da Gerry.B 30/08/2014 17:18] |
| | Post: 2.609 | Registrato il: 13/03/2012
| Città: LIVORNO | Età: 78 | Utente Veteran | 2010 | | OFFLINE | |
|
30/08/2014 16:52 | |
in j2 non c'è il percorso, inoltre il nome del file non può contenere il carattere :
vuoi slvare come xlsm o come xlsx ? [Modificato da patel45 30/08/2014 17:01]
----------
Win 10 - Excel 2010
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta |
| | Post: 8 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
30/08/2014 17:00 | |
patel45, 30/08/2014 16:52:
in j2 non c'è il percorso, inoltre il nome del file non può contenere il carattere :
http://im4.freeforumzone.it/up/40/1/1582404687.rar
SCUSA HO CORRETTO
VOGLIO SALVARE FILE.XLSX
[Modificato da Gerry.B 30/08/2014 17:03] |
| | Post: 2.610 | Registrato il: 13/03/2012
| Città: LIVORNO | Età: 78 | Utente Veteran | 2010 | | OFFLINE | |
|
30/08/2014 17:01 | |
vuoi salvare come xlsm o come xlsx ?
in j2 hai messo la cartella o il nome del file ? [Modificato da patel45 30/08/2014 17:05]
----------
Win 10 - Excel 2010
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta |
| | Post: 9 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
30/08/2014 17:08 | |
patel45, 30/08/2014 17:01:
vuoi salvare come xlsm o come xlsx ?
in j2 hai messo la cartella o il nome del file ?
IL NOME della cartella deve essere uguale al file
http://im4.freeforumzone.it/up/40/1/1582404687.rar
sempre se non chiedo troppo e possibile un tasto reset delle celle non bloccate.
grazie aticipatamente [Modificato da Gerry.B 30/08/2014 17:26] |
| | Post: 10 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
30/08/2014 18:26 | |
|
| | Post: 11 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
30/08/2014 19:27 | |
Gerry.B, 30/08/2014 18:26:
ALLEGATO
MI AVETE ANCHE FATTO UPPARE IL FILE 2 SETTIMANE DI LAVORO REGALATE ALLA RETE E NESSUNA RISPOSTA
[Modificato da Gerry.B 30/08/2014 20:01] |
| | Post: 2.245 | Registrato il: 28/06/2011
| Città: AGORDO | Età: 70 | Utente Veteran | 2013 | | OFFLINE | |
|
31/08/2014 00:07 | |
>>>come se stessi parlando in aramaico
Se non sai rispondere a semplici domande e normale che Ti dicono d'allegare
>>>2 SETTIMANE DI LAVORO REGALATE ALLA RETE
L'allegato che non ho richiesto, comunque voglio vedere chi lo usera
Metti in J2 questa formula ="I:\W0rK\ARCHIVIO\POLIZZE\" & Sviluppo!F21 e formattala come generale...(Non devi vedere nella cella il segno =)
Dopo copia il codice in un modulo e salva il files con estensione .XLSM
Ti apparire un errore se il files esiste già se non vuoi vederlo ci sono due righe con ' da togliere
Option Explicit
Sub copia()
Dim Ws1 As Worksheet: Set Ws1 = ThisWorkbook.Worksheets("Dati")
Dim Percorso As String, nomeFile As String, Verifica
Percorso = Ws1.Range("J2")
Application.ScreenUpdating = False
'Application.DisplayAlerts = False
Ws1.Select
nomeFile = Sheets("Sviluppo").Range("F21")
Set Verifica = CreateObject("Scripting.FileSystemObject")
If Not Verifica.FolderExists(Percorso) Then
Verifica.CreateFolder (Percorso)
Percorso = Percorso & "\" & nomeFile & ".XLSX"
Ws1.Select
Ws1.Copy
ActiveWorkbook.SaveAs Filename:=Percorso, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWorkbook.Close
Else
Percorso = Percorso & "\" & nomeFile & ".XLSX"
Ws1.Select
Ws1.Copy
ActiveWorkbook.SaveAs Filename:=Percorso, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWorkbook.Close
End If
'Application.DisplayAlerts = True
Application.ScreenUpdating = True
Set Ws1 = Nothing
End Sub Excel 2013 |
| | Post: 12 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
01/09/2014 10:25 | |
Grazie Mille funziona alla perfezione
Sempre se non ti dispiace ho tovato questo stralcio di codice
in questo ha una funzione che una volta salvato il file lo apre pure
Sub Salvafile()
Dim p As Worksheet
Dim Directory As String
Dim NomeFile As String
Set p = Worksheets("PANNELLO")
Directory = p.Cells(7, 6).Value
NomeFile = p.Cells(8, 6).Value
ChDir Directory
ActiveWorkbook.SaveAs Filename:=Directory + NomeFile, FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
End Sub
1- e possibile integrare questa funzione nel tuo codice
2- come si resettano le celle bloccate con un altro tasto
tnkx
[Modificato da Gerry.B 01/09/2014 10:26] |
| | Post: 2.247 | Registrato il: 28/06/2011
| Città: AGORDO | Età: 70 | Utente Veteran | 2013 | | OFFLINE | |
|
01/09/2014 12:36 | |
>>>1- e possibile integrare questa funzione nel tuo codice
Basta mettere un ' davanti alla riga ActiveWorkbook.Close
'ActiveWorkbook.Close
>>>2- come si resettano le celle bloccate con un altro tasto
Resettare in ITALIANO, significa portarle allo stadio precedente.
Qual'era lo stadio precedente "bloccate/sboccate"? Excel 2013 |
| | Post: 13 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
01/09/2014 12:46 | |
1 - Grazie
>>>2- come si resettano le celle bloccate con un altro tasto
Resettare in ITALIANO, significa portarle allo stadio precedente.
Qual'era lo stadio precedente "bloccate/sboccate"?
Vorrei Cancellare il loro contenuto
Scusami ma ho notato che non salva tutti i fogli ma solo quello dove inserisco i DATI gli altri no che devo modificare? [Modificato da Gerry.B 01/09/2014 12:50] |
| | Post: 14 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
01/09/2014 14:01 | |
Option Explicit
Sub copia()
Dim Ws1 As Worksheet: Set Ws1 = ThisWorkbook.Worksheets("Dati")
Dim Percorso As String, nomeFile As String, Verifica
Percorso = Ws1.Range("J2")
Application.ScreenUpdating = False
'Application.DisplayAlerts = False
Ws1.Select
nomeFile = Sheets("Sviluppo").Range("F21")
Set Verifica = CreateObject("Scripting.FileSystemObject")
If Not Verifica.FolderExists(Percorso) Then
Verifica.CreateFolder (Percorso)
Percorso = Percorso & "\" & nomeFile & ".XLSX"
Ws1.Select
Ws1.Copy
ActiveWorkbook.SaveAs Filename:=Percorso, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWorkbook.Close
Else
Percorso = Percorso & "\" & nomeFile & ".XLSX"
Ws1.Select
Ws1.Copy
ActiveWorkbook.SaveAs Filename:=Percorso, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
'ActiveWorkbook.Close
End If
'Application.DisplayAlerts = True
Application.ScreenUpdating = True
Set Ws1 = Nothing
End Sub
Scusami ho risoloto tutto tranne che non riesco a salvare tutti i fogli nello stesso file.xlsm ma solo quello corrente "DATI" cosa devo modificare per salvare tutti i fogli.
[Modificato da Gerry.B 01/09/2014 14:04] |
| | Post: 2.248 | Registrato il: 28/06/2011
| Città: AGORDO | Età: 70 | Utente Veteran | 2013 | | OFFLINE | |
|
01/09/2014 14:04 | |
Per fortuna che stiamo parlando in aramaico
>>>2- come si resettano le celle bloccate con un altro tasto
>>>Vorrei Cancellare il loro contenuto
Di quali celle?
Di quale Files (quello originale o appena salvato)
>>>vuoi salvare come xlsm o come xlsx ?
>>>4)Devi salvare solo il foglio DATI in un files nuovo col nome di B2
>>>non salva tutti i fogli
Come prima mettere un ' davanti ai due gruppi di scritte
'Ws1.Select
'Ws1.Copy
>>>vuoi salvare come xlsm o come xlsx ?
Ti apparira l'avviso se Vuoi salvare con il codice o senza, rispondi NO
Ps. Perchè in un solo post, non richiedi tutto quello che desideri, spiegandoti bene? Excel 2013 |
| | Post: 15 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
01/09/2014 14:07 | |
raffaele1953, 01/09/2014 14:04:
Per fortuna che stiamo parlando in aramaico
>>>2- come si resettano le celle bloccate con un altro tasto
>>>Vorrei Cancellare il loro contenuto
Di quali celle?
Di quale Files (quello originale o appena salvato)
>>>vuoi salvare come xlsm o come xlsx ?
>>>4)Devi salvare solo il foglio DATI in un files nuovo col nome di B2
>>>non salva tutti i fogli
Come prima mettere un ' davanti ai due gruppi di scritte
'Ws1.Select
'Ws1.Copy
>>>vuoi salvare come xlsm o come xlsx ?
Ti apparira l'avviso se Vuoi salvare con il codice o senza, rispondi NO
Ps. Perchè in un solo post, non richiedi tutto quello che desideri, spiegandoti bene?
Scusami hai davvero tanta pazienza per l'estenzione del salvataggio e indifferente bata che non si perdano dati ma non riesco salvare i fogli con i risultati ma solo quello DATI
|
| | Post: 2.249 | Registrato il: 28/06/2011
| Città: AGORDO | Età: 70 | Utente Veteran | 2013 | | OFFLINE | |
|
01/09/2014 14:16 | |
>>> Ps. Perchè in un solo post, non richiedi tutto quello che desideri, spiegandoti bene?
Leggi prima di rispondere
>>>non riesco salvare i fogli
>>>Come prima mettere un ' davanti ai due gruppi di scritte
'Ws1.Select
'Ws1.Copy
Excel 2013 |
| | Post: 16 | Registrato il: 30/08/2014
| Città: MILANO | Età: 43 | Utente Junior | excell 2013 | | OFFLINE | |
|
01/09/2014 14:22 | |
raffaele1953, 01/09/2014 14:16:
>>> Ps. Perchè in un solo post, non richiedi tutto quello che desideri, spiegandoti bene?
Leggi prima di rispondere
>>>non riesco salvare i fogli
>>>Come prima mettere un ' davanti ai due gruppi di scritte
'Ws1.Select
'Ws1.Copy
Con questa correzione salva e chiude ma sempre un solo foglio salva
|
| | Post: 2.250 | Registrato il: 28/06/2011
| Città: AGORDO | Età: 70 | Utente Veteran | 2013 | | OFFLINE | |
|
01/09/2014 15:32 | |
>>>Con questa correzione salva e chiude ma sempre un solo foglio salva
A me salva tutti i fogli
L'unica cosa che non mi piace che nonostante venga salvato in XLSX si possa avviare ancora il codice Excel 2013 |
| | Post: 2.251 | Registrato il: 28/06/2011
| Città: AGORDO | Età: 70 | Utente Veteran | 2013 | | OFFLINE | |
|
01/09/2014 15:42 | |
Anche questa salva una copia di tutti i fogli pero con formato XLSM
Option Explicit
Sub copia()
Dim Ws1 As Worksheet: Set Ws1 = ThisWorkbook.Worksheets("Dati")
Dim Percorso As String, nomeFile As String, Verifica
Percorso = Ws1.Range("J2")
Application.ScreenUpdating = False
'Application.DisplayAlerts = False
Ws1.Select
nomeFile = Sheets("Sviluppo").Range("F21")
Set Verifica = CreateObject("Scripting.FileSystemObject")
If Not Verifica.FolderExists(Percorso) Then
Verifica.CreateFolder (Percorso)
Percorso = Percorso & "\" & nomeFile & ".XLSM"
ActiveWorkbook.SaveCopyAs Filename:=Percorso
Workbooks.Open Percorso
Else
Percorso = Percorso & "\" & nomeFile & ".XLSM"
ActiveWorkbook.SaveCopyAs Filename:=Percorso
Workbooks.Open Percorso
End If
'Application.DisplayAlerts = True
Application.ScreenUpdating = True
Set Ws1 = Nothing
End Sub Excel 2013 |
| | Post: 196 | Registrato il: 21/06/2013
| Città: NAPOLI | Età: 70 | Utente Junior | Excel 365 | | OFFLINE |
|
01/09/2014 15:42 | |
Scusate una piccola digressione.
Mi chiedo come si possa fare in Excel dopo aver modificato ad esempio tre fogli di una cartella di lavoro salvarne uno solo.
Ho sempre saputo che il comando Save salva l'intera cartella di lavoro e non i singoli fogli.
Se mi illuminate vi ringrazio.
Alfredo
Alfredo |
| | Post: 2.619 | Registrato il: 13/03/2012
| Città: LIVORNO | Età: 78 | Utente Veteran | 2010 | | OFFLINE | |
|
01/09/2014 16:15 | |
si usa sheets(2).copy per creare un nuovo workbook col solo foglio2 e poi si salva
----------
Win 10 - Excel 2010
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta |
| | Post: 197 | Registrato il: 21/06/2013
| Città: NAPOLI | Età: 70 | Utente Junior | Excel 365 | | OFFLINE |
|
01/09/2014 16:23 | |
Patel grazie della delucidazione.
Alfredo
Alfredo |
|
|