Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione dei dati.
...
Quanche idea di cosa causa la perdita?
Come posso riattivare la convalida senza perdere le i dati inseriti?
Grazie
Davide
Ciao Davide,
se la copia dei fogli è stata eseguita correttamente anche la formattazione condizionale viene mantenuta.
Il codice allegato copia tutte le regole di convalida presenti nel 'foglioTemplate' in tutti i fogli che decido. Ovviamente la copia è effettuata nella medesima posizione e senza modificare il contenuto della cella di destinazione.
Ciao,
Andrea
Sub CopiaRegoleConvalidaTraFogli()
Dim wsSource As Excel.Worksheet
Dim rCell As Excel.Range, rValidate As Excel.Range
Dim vbSheets As Variant, vbSheet As Variant
With ThisWorkbook
'---------- adatta alle tue esigenze
Set wsSource = .Worksheets("FoglioTemplate")
vbSheets = Array("x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9")
'---------- individua celle con regola di convalida
On Error Resume Next
Set rValidate = wsSource.UsedRange.SpecialCells(xlCellTypeSameValidation)
On Error GoTo 0
'---------- copia la regola di convalida nella medesima cella di tutti i fogli
For Each rCell In rValidate
rCell.Copy
For Each vbSheet In vbSheets
.Worksheets(vbSheet).Range(rCell.Address).PasteSpecial Paste:=xlPasteValidation
Next
Next
End With
End Sub