Bonjour,
Je copie les valeurs et les formats d'une feuille (source) dans une autre (Destination) et je souhaite conserver les validations des cellules. J'ai donc tenté ce petit bout de code
	
	
	
	
	
		
Malheureusement, j'ai une erreur "1004" sur ".add Type:=". Cela semble fréquent avec Validation.Add. Y a-t-il quelque chose que j'aurais loupé là dedans ?
J'ai essayé plein de solutions dont un Select Case sur CellSource.Validation.Type car le nombre de paramètre de .add semle varier suivant la valeur de Type. En désespoir de cause, j'ai écrit un contournement
	
	
	
	
	
		
Par avance, je vous remercie de vos réponses, sinon j'espère que ce bout code sera utile à quelqu'un.
A bientôt
GM
	
		
			
		
		
	
				
			Je copie les valeurs et les formats d'une feuille (source) dans une autre (Destination) et je souhaite conserver les validations des cellules. J'ai donc tenté ce petit bout de code
		VB:
	
	
	    With FeuilDest
        FeuilSource.Cells.Copy
        'L'ordre du collage doit être respecté pour pouvoir coller des nombres au format texte
        .Cells.PasteSpecial xlPasteValuesAndNumberFormats
        .Cells.PasteSpecial xlPasteFormats 'Collage du format
    End With
    For Each CellSource In FeuilSource.Cells.SpecialCells(xlCellTypeAllValidation)
        Set CellDest = FeuilDest.Range(CellSource.Address)
        With CellDest.Validation
            .Delete
            .Add Type:=CellSource.Validation.Type, _
                 AlertStyle:=CellSource.Validation.AlertStyle, _
                 Operator:=CellSource.Validation.Operator, _
                 Formula1:=CellSource.Validation.Formula1, _
                 Formula2:=CellSource.Validation.Formula2
            .ErrorMessage = CellSource.Validation.ErrorMessage
            .ErrorTitle = CellSource.Validation.ErrorTitle
            .IgnoreBlank = CellSource.Validation.IgnoreBlank
            .IMEMode = CellSource.Validation.IMEMode
            .InCellDropdown = CellSource.Validation.InCellDropdown
            .InputMessage = CellSource.Validation.InputMessage
            .InputTitle = CellSource.Validation.InputTitle
            .ShowError = CellSource.Validation.ShowError
            .ShowInput = CellSource.Validation.ShowInput
        End With
    Next CellSourceMalheureusement, j'ai une erreur "1004" sur ".add Type:=". Cela semble fréquent avec Validation.Add. Y a-t-il quelque chose que j'aurais loupé là dedans ?
J'ai essayé plein de solutions dont un Select Case sur CellSource.Validation.Type car le nombre de paramètre de .add semle varier suivant la valeur de Type. En désespoir de cause, j'ai écrit un contournement
		Code:
	
	
	    For Each CellSource In FeuilSource.Cells.SpecialCells(xlCellTypeAllValidation)
        Set CellDest = FeuilDest.Range(CellSource.Address)
        CellSource.Copy CellDest
        If Not CellSource.value = "" Then
            CellSource.Copy
            CellDest.PasteSpecial Paste:=xlPasteValues
        Else
            CellDest.Formula = ""
        End If
    Next CellSourcePar avance, je vous remercie de vos réponses, sinon j'espère que ce bout code sera utile à quelqu'un.
A bientôt
GM
 
	