Bonjour à toutes et à tous,
Cela fait fort longtemps que je n'étais pas passé par ici. Je me lance sur un projet vba, mais ça fait un moment que j'ai pas mis la main à la pate..
J'ai besoin d'insérer des formules dans plusieurs feuilles en fonction d'un critère.
J'utilise un filtre auto mais il arrive que le critère cherché ne soit pas present dans la colonne.
J'ai passé la journée à farfouiller mon code au point que j'y vois plus très clair.
J'aurais besoin de votre aide.
Je procède comme suit :
- Je filtre chaque feuille avec le critère en différente langues.
- J'active les feuille une à une et j'y colle mon code pour insérer ma formule
J'ai essayé plusieurs choses, cela fonctionne si le critère existe. En revanche, lorsque il n'est pas present cela m'efface le titre de mon tableau.
Comment faire pour qu'il ne me colle pas cette "formule" si le critère n'existe pas? Et d'autre part, il me semble que ce n'est pas conseiller d'utiliser trop de .activate
Je vous mets le code dessous avec un fichier.
Merci de votre aide.
	
	
	
	
	
		
	
		
			
		
		
	
				
			Cela fait fort longtemps que je n'étais pas passé par ici. Je me lance sur un projet vba, mais ça fait un moment que j'ai pas mis la main à la pate..
J'ai besoin d'insérer des formules dans plusieurs feuilles en fonction d'un critère.
J'utilise un filtre auto mais il arrive que le critère cherché ne soit pas present dans la colonne.
J'ai passé la journée à farfouiller mon code au point que j'y vois plus très clair.
J'aurais besoin de votre aide.
Je procède comme suit :
- Je filtre chaque feuille avec le critère en différente langues.
- J'active les feuille une à une et j'y colle mon code pour insérer ma formule
J'ai essayé plusieurs choses, cela fonctionne si le critère existe. En revanche, lorsque il n'est pas present cela m'efface le titre de mon tableau.
Comment faire pour qu'il ne me colle pas cette "formule" si le critère n'existe pas? Et d'autre part, il me semble que ce n'est pas conseiller d'utiliser trop de .activate
Je vous mets le code dessous avec un fichier.
Merci de votre aide.
		Code:
	
	
	Sub test()
    Dim DerLigDE As Long
    Dim DerLigFR As Long
    Dim DerLigIT As Long
    Dim DerLigES As Long
    Dim k As Integer, i As Integer
    Dim Cell As Range
    DerLigDE = Sheets("DE").Range("A65536").End(xlUp).Row
    DerLigFR = Sheets("FR").Range("A65536").End(xlUp).Row
    DerLigIT = Sheets("IT").Range("A65536").End(xlUp).Row
    DerLigES = Sheets("ES").Range("A65536").End(xlUp).Row
       Sheets("DE").Range("$A$1:$AB" & DerLigDE).AutoFilter Field:=3, Criteria1:="Einstellung"
       Sheets("FR").Range("$A$1:$AB" & DerLigFR).AutoFilter Field:=3, Criteria1:="Ajustement"
       Sheets("IT").Range("$A$1:$AB" & DerLigIT).AutoFilter Field:=3, Criteria1:="Modifica"
       Sheets("ES").Range("$A$1:$AB" & DerLigES).AutoFilter Field:=3, Criteria1:="Ajuste"
k = Sheets.Count
For i = 1 To k
    Sheets(i).Activate
     For Each Cell In Range("X2:X" & Range("A65536").End(xlUp).Row).SpecialCells(xlCellTypeVisible)
                Cell.FormulaR1C1 = "=RC[-1]-RC[-15]"
            Next Cell
     For Each Cell In Range("AA2:AA" & Range("A65536").End(xlUp).Row).SpecialCells(xlCellTypeVisible)
                 Cell.FormulaR1C1 = "=RC[-3]-RC[-1]"
            Next Cell
Next i
End Sub