ho trovato una macro, che genera e rinomina i fogli, creata da flash nel topic "Generare più fogli contemporaneamente con una macro";
sto provando a modificarla in modo che si possa generare ed inserire, in un textbox, il nome da attribuire ai fogli; i fogli creati vengono inseriti dopo il foglio Modello già presente nella cartella.
in un modulo ho inserito questo codice:
- Codice: Seleziona tutto
Sub Crea_Rinomina_Fogli()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationAutomatic 'xlManual
Dim i As Integer
Dim X As String
UserForm1.Show
UserForm1.TextBox1.SetFocus
'usiamo una textox per inserire il nome che vogliamo dare ai fogli
X = UserForm1.TextBox1.Text
'se non scriviamo niente nella textbox usciamo dalla routine
If X = "" Then Exit Sub '<<<<<<
If X <> "" Then '<<<<<<
For i = 2 To 5 'max numero di fogli che vogliamo ottenere
Sheets("Modello").Copy After:=Worksheets(Worksheets.Count)
'I fogli avranno un nome formato da X e dalla cifra i-1
Application.Sheets(i).Name = "X" & " " & i - 1
End If '<<<<<<
Next i
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub
poi ho creato una form con un textbox ed un commandbutton, e nell'evento click del pulsante ho inserito
- Codice: Seleziona tutto
Sub CommandButton1_Click()
Unload Me
End Sub
se elimino le linee evidenziate la macro funziona ma i nomi dei fogli sono x 1,x 2,x 3..
qualunque cosa si digiti nel textbox.
vorrei fare in modo che se non si inserisce nulla nel textbox premendo il pulsante non si genera niente, altrimenti i fogli avranno il nome del testo inserito.
come modifico il codice?
ciao grazie