Menu

Incrémenter des formules en VBA [Résolu]

Messages postés
464
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
7 mars 2019
- - Dernière réponse : Mistral_13200
Messages postés
464
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
7 mars 2019
- 26 janv. 2019 à 10:10
Bonjour à tous,

Dans une feuille de calcule j’utilise la macros suivantes pour :
- Créer des formules.
- Copier ces formules dans des cellules.
- Incrémenter ces formules jusqu’à la dernière ligne.

Sub CalculFeuil()

' Déclaration variable.
Dim UR As String
Dim Club As String
Dim Adh As String
Dim NumFihier As String
Dim DernLigne As Integer

' Calcule dernière ligne sur la colonne AE.
DernLigne = Range("AE" & Rows.Count).End(xlUp).Row

' Déclaration des formules des formules.
UR = "=LEFT(RC[13],2)"
Club = "=MID(RC[12],4,4)"
Adh = "=RIGHT(RC[11],4)"
NumFihier = "=CONCATENATE(RC[-3],RC[-2],RC[-1],""01"")"

' Copie des formules aux emplacements.
Range("R2").Formula = UR
Range("S2").Formula = Club
Range("T2").Formula = Adh
Range("U2").Formula = NumFihier

' Incrémentation des formules jusqu'à la dernirer ligne.
Range("R2").AutoFill Destination:=Range("R3:D" & DernLigne), Type:=xlFillDefault
Range("S2").AutoFill Destination:=Range("S3:E" & DernLigne), Type:=xlFillDefault
Range("T2").AutoFill Destination:=Range("T3:F" & DernLigne), Type:=xlFillDefault
Range("U2").AutoFill Destination:=Range("U3:G" & DernLigne), Type:=xlFillDefault

End Sub



Quand je déroule la macro en « pas à pas » j’ai une erreur "La méthode AutoFill de classe range à échouée".

Je sèche, pouvez m’aider ?

Merci d’avance pour votre aide
Mistral
Afficher la suite 

Votre réponse

2 réponses

Messages postés
15199
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
24 mai 2019
8437
0
Merci
Bonjour

Sans regarder ton code entier, je constate que tes Autofill ne contiennent pas, dans la destination, la cellule d'origine, ce qui est obligatoire.

Quand tu as une erreur comme ça, tu cliques sur la propriété ou la méthode (Autofill ici), et tu appuies sur F1 et tu as la réponse :
https://docs.microsoft.com/fr-fr/office/vba/api/excel.range.autofill?f1url=https%3A%2F%2Fmsdn.microsoft.com%2Fquery%2Fdev11.query%3FappId%3DDev11IDEF1%26l%3Dfr-FR%26k%3Dk%28vbaxl10.chm144083%29%3Bk%28TargetFrameworkMoniker-Office.Version%3Dv16%29%26rd%3Dtrue

m@rina
Commenter la réponse de m@rina
Messages postés
464
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
7 mars 2019
2
0
Merci
Bonjour Marina,

Merci pour ta réponse qui m'a été très utile puisque ce matin, après une bonne nuit, j'ai réglé mon problème.
J'avais trouvé sur le Net une macro qui correspondait à mes besoins, mais je n'avais jamais utilisé les "Autofill", d'où mon erreur en l'adaptant à mon fichier.
J'ai souvent recours à la touche F1, mais j'avoue que j'ai quelque fois du mal à tout comprendre.

Encore une fois merci.
Mistral
Commenter la réponse de Mistral_13200