Tom's Guide > Forum > Logiciels > Excel du mode absolu au mode relatif

Excel du mode absolu au mode relatif

Forum Logiciels : Excel du mode absolu au mode relatif

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour à tous,

Me voilà en tant que petit scarabé d'Execl qui tente de s'initier au vba. Mon souci est de passer mon code vba d'un mode absolu à un mode relatif afin que je puisse l'appliquer à n'importe lequel de mes fichiers Excel.
Votre aide sera plus que la bienvenue. Le code concerné est le suivant :

Sub Compteurs()
'
'
Columns("F:F" ).Select
Selection.Insert Shift:=xlToRight
Selection.NumberFormat = "General"
Range("F2" ).Select
ActiveCell.FormulaR1C1 = "=RC[-5]&RC[-4]&RC[-3]&RC[-2]&RC[-1]"
Range("F2" ).Select
Selection.AutoFill Destination:=Range("F2:F31" )
Range("F2:F31" ).Select
Columns("G:G" ).Select
Selection.Insert Shift:=xlToRight
Range("G1" ).Select
Selection.NumberFormat = "@"
ActiveCell.FormulaR1C1 = "CI"
Range("F2:F31" ).Select
Selection.Copy
ActiveWindow.SmallScroll Down:=-15
Range("G2" ).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Columns("A:F" ).Select
Range("F1" ).Activate
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
Cells.Select
Cells.EntireColumn.AutoFit
Range("A1" ).Select
Selection.AutoFilter
ActiveWindow.SmallScroll ToRight:=1
Columns("H:H" ).Select
Selection.Insert Shift:=xlToRight
Range("H1" ).Select
ActiveCell.FormulaR1C1 = "PRETITRE2"
Range("H2" ).Select
ActiveCell.FormulaR1C1 = "=IF(RC[-1]="""",RC[-6],RC[-1])"
Selection.AutoFill Destination:=Range("H2:H31" )
Range("H2:H31" ).Select
Selection.AutoFilter Field:=7, Criteria1:="="
Range("G2:G31" ).Select
Selection.ClearContents
Selection.AutoFilter Field:=7
ActiveWindow.SmallScroll ToRight:=2
Columns("J:J" ).Select
Selection.Insert Shift:=xlToRight
Range("J1" ).Select
ActiveCell.FormulaR1C1 = "PRENOM2"
Range("J2" ).Select
ActiveCell.FormulaR1C1 = "=IF(RC[-1]="""",RC[-7],RC[-1])"
Selection.AutoFill Destination:=Range("J2:J31" )
Range("J2:J31" ).Select
Selection.AutoFilter Field:=9, Criteria1:="="
Range("I2:I31" ).Select
Selection.ClearContents
Selection.AutoFilter Field:=9
ActiveWindow.SmallScroll ToRight:=2
Columns("L:L" ).Select
Selection.Insert Shift:=xlToRight
Range("L1" ).Select
ActiveCell.FormulaR1C1 = "PRENOMRUE2"
Range("L2" ).Select
ActiveCell.FormulaR1C1 = "=IF(RC[-1]="""",RC[-8],RC[-1])"
Selection.AutoFill Destination:=Range("L2:L31" )
Range("L2:L31" ).Select
Selection.AutoFilter Field:=11, Criteria1:="="
Range("K2:K31" ).Select
Selection.ClearContents
Selection.AutoFilter Field:=11
ActiveWindow.SmallScroll ToRight:=3
Columns("N:N" ).Select
Selection.Insert Shift:=xlToRight
Range("N1" ).Select
ActiveCell.FormulaR1C1 = "PRECODPOS2"
Range("N2" ).Select
ActiveCell.FormulaR1C1 = "=IF(RC[-1]="""",RC[-9],RC[-1])"
Selection.AutoFill Destination:=Range("N2:N31" )
Range("N2:N31" ).Select
Selection.AutoFilter Field:=13, Criteria1:="="
Range("M2:M31" ).Select
Selection.ClearContents
Selection.AutoFilter Field:=13
ActiveWindow.SmallScroll ToRight:=2
Columns("P:P" ).Select
Selection.Insert Shift:=xlToRight
Range("P2" ).Select
ActiveCell.FormulaR1C1 = ""
Range("P1" ).Select
ActiveCell.FormulaR1C1 = "PREVILLE2"
Range("P2" ).Select
ActiveCell.FormulaR1C1 = "=IF(RC[-1]="""",RC[-10],RC[-1])"
'
Selection.AutoFill Destination:=Range("P2:P31" )
Range("P2:P31" ).Select
Selection.AutoFilter Field:=15, Criteria1:="="
Range("O2:O31" ).Select
Selection.ClearContents
Selection.AutoFilter Field:=15
End Sub

L'enregistreur est certes pratique mais limite après les possibilités, les miennes aussi semblent l'être :heink:

Merci d'avance.

Clem.

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.
Tom's Guide > Forum > Logiciels > Excel du mode absolu au mode relatif
Aller à :

Il y a 292 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens