Duplicazione Fogli Di Lavoro e Scelta Nome Impiegato

di il
0 risposte

Duplicazione Fogli Di Lavoro e Scelta Nome Impiegato

Buonasera, ho creato due fogli in exel 2019 dove riporta una normale busta paga con il primo foglio denominato “busta paga mensilizzato e il secondo foglio ”…orario" . Ho inserito nella stessa un pulsante che con una macro, non tutta farina del mio sacco, mi duplica il foglio, con il mese di riferimento successivo e l'anno ma riporta dei dati, impiegato,….. , del primo foglio (mensilizzata). Vorrei poter decidere se copiare una sola scheda che sia mensilizzata o orario o entrambe ma che si decide il nome gia presente nella prima busta.

 

   Sub DuplicaFoglio()
   Dim nomeFoglio1 As String, nomeFoglio2 As String, FgL As String
   Dim Num As Variant
   Dim Anno As Long
   Dim CancellaContenutoH17U17 As String
   
   FgL = ActiveSheet.Name
' Chiede all'utente di inserire un nome per il nuovo foglio
   Num = InputBox("Inserisci il NUMERO del mese. Ex 1,2,3 ecc:", "Nuovo Foglio")
   If IsNumeric(Num) And (Num > 0 And Num <= 12) Then
       nomeFoglio1 = Evaluate("=VLOOKUP(" & Num & ",{1,""Gennaio"";2,""Febbraio"";3,""Marzo"";4,""Aprile"";5,""Maggio"";6,""Giugno"";7,""Luglio"";8,""Agosto"";9,""Settembre"";10,""Ottobre"";11,""Novembre"";12,""Dicembre""},2,FALSE)")
       If IsError(Evaluate("'" & nomeFoglio1 & "'!A1")) Then
           Anno = InputBox("Inserisci l'anno. Ex 2023,2024,ecc ecc:", "Anno")
'Non esiste. Crea il foglio corrente ed inserire una data
           Sheets(FgL).Copy After:=Sheets(Sheets.Count)
           ActiveSheet.Name = nomeFoglio1
           Range("H17:U32").ClearContents
           Sheets(nomeFoglio1).Range("b9") = Num & "/" & "1/" & Anno
'inserisco l'altro foglio  "busta paga "mese" 2022 orario
           nomeFoglio2 = "busta paga " & nomeFoglio1 & " " & Anno & " orario"
           Sheets(FgL).Copy After:=Sheets(Sheets.Count)
           ActiveSheet.Name = nomeFoglio2
           Sheets(nomeFoglio2).Range("b9") = Num & "/" & "1/" & Anno
           Range("H17:U32").ClearContents
       End If
   Else       MsgBox "Numero-carattere errato"
   End If
   End Sub

Spero in una soluzione al problema e poter implementare il primo step di domande.

Grazie

Devi accedere o registrarti per scrivere nel forum
0 risposte