FormulaR1C1 [Résolu]

Messages postés
7
Date d'inscription
lundi 20 mai 2019
Statut
Membre
Dernière intervention
13 juin 2019
-
Bonjour,

En ayant fait ma macro à la main, c'est-à-dire en enregistrant ma macro pas à pas, je me retrouve avec ce code à un moment donné :
 Range("AC2").Select
        ActiveCell.FormulaR1C1 = "=IF(AND(RC[-7]<>""#"",RC[-7]<>""Non OK""),RC[-7],RC[-2])"
        Selection.AutoFill Destination:=Range("AC2:AC" & (nombre_lignes))
        
        Range("AD2").Select
        ActiveCell.FormulaR1C1 = "=IF(AND(RC[-18]<>""#"",RC[-18]<>""Non OK""),RC[-18],RC[-2])"
        Selection.AutoFill Destination:=Range("AD2:AD" & (nombre_lignes))


je me demandais est ce qu'il n'y aurai pas une manière plus simple de l'écrire et comment s'il vous plait, car de plus en balayant les différents forums, les select m'ont l'air inutile, n'est ce pas ?
Etant débutant dans la programmation VBA, soyez indulgent s'il vous plaît !!

Merci d'avance de vos réponses.
Afficher la suite 

1 réponse

Meilleure réponse
Messages postés
14797
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2019
1177
1
Merci
Bonjour,
Si la feuille active est la bonne:
With Range("AC2")
    .FormulaR1C1 = "=IF(AND(RC[-7]<>""#"",RC[-7]<>""Non OK""),RC[-7],RC[-2])"
    .AutoFill Destination:=Range("AC2:AC" & (nombre_lignes))
End With
With Range("AD2")
    .FormulaR1C1 = "=IF(AND(RC[-18]<>""#"",RC[-18]<>""Non OK""),RC[-18],RC[-2])"
    .AutoFill Destination:=Range("AD2:AD" & (nombre_lignes))
End With

Dire « Merci » 1

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche

CCM 64107 internautes nous ont dit merci ce mois-ci

Commenter la réponse de f894009