Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Duplicare un file

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Duplicare un file

Postdi tempusfugit » 11/08/20 13:49

Salve,
ho creato una macro per duplicare un foglio di lavoro con (macro, formule e formattazione) e con una inputbox gli chiedo anche di rinominare il file, ora avrei bisogno di creare una macro che mi duplichi lo stesso foglio per 28-29-30 o 31 a secondo del mese, come posso fare?

Codice: Seleziona tutto
Sub duplicafogli()
Dim nomef As String
nomef = InputBox("Digitare il nome del fogli:")
If nomef <> "" Then
   ActiveSheet.Copy After:=Sheets(Sheets.Count)
   ActiveSheet.Name = nomef
   
End If

End Sub

Rispo = InputBox("Nome nuovo foglio?")
If Rispo <> "" Then
Sheets("Default").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = Rispo
End If
End Sub


Edit
Messaggio sganciato da vecchia discussione in cui era stato inserito (viewtopic.php?f=26&t=109259)
Anthony
tempusfugit
Newbie
 
Post: 6
Iscritto il: 29/07/20 07:27

Sponsor
 

Re: Duplicare un file

Postdi Anthony47 » 11/08/20 23:35

Ti invito ancora una volta a non agganciarti a vecchie discussioni, ma a crearne una nuova col tuo nuovo problema.
Ti "raccomando" anche di dare un cenno di riscontro alle risposte che hai avuto su alcune altre domande che hai posto, seno' ci sembra di parlare al vento e ci passa la voglia.
Ti suggerisco anche di dare uno sguardo alle "Linee guida per pubblicare le vostre domande", vedi viewtopic.php?f=26&t=103911&p=605595#p605595

Quanto alla tua domanda, se vuoi duplicare N volte lo stesso foglio per ogni giorno del mese allora puoi usare questo "snippet":
Codice: Seleziona tutto
cMese = 3                '<<< Il mese da "creare", 3=Marzo, 4=Aprile,...
mFoglio = "Modello"      '<<< Il foglio da duplicare
'
For I = DateSerial(Year(Now), cMese, 1) To DateSerial(Year(Now), cMese + 1, 1) - 1
    Sheets(mFoglio).Copy After:=Sheets(Sheets.Count)    'Duplica modello
    ActiveSheet.Name = Format(CDate(I), "mmm_dd")       'Assegna nome al nuovo foglio
Next I
Ora il mese da creare e' scritto nel codice della macro (vedi riga marcata <<<), ma puoi popolare la variabile "cMese" tramite inputbox, o tramite una cella
Il codice usa come anno quello "Corrente"; cioe' apparentemente non puoi creare i fogli per "Gennaio 2021" prima di gennaio-2021. In realta' puoi gia' nel 2020 creare il file con i giorni di Gennaio 2021 usando come mese il valore 13

Fai sapere...
Avatar utente
Anthony47
Moderatore
 
Post: 17106
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "Duplicare un file":


Chi c’è in linea

Visitano il forum: Nessuno e 25 ospiti