Problème de Formule

Résolu
gham Messages postés 48 Statut Membre -  
 Hebus -
Bonjour,
J'ai un classeur qui contient des UserForm sous VBA, et avec des textBox, Dans un TextBox je fais entrer les dates de naissnaces (Dans la colonne G) et je travaille avec la formule Annee() pour extraire l'année de naissance afin de calculer le nombre des élèves ayant un certain nombre.
Mais le problème est cette erreur qui apparaît quand je fais entrer une date Erreur d'execution "1004". La méthode AutoFill de la classe range a échoué.
La formule que j'ai entré sous vba dans une macro et que j'ai appelé dans le bouton ok

Sub FormulEtendtre()

Worksheets("Tabscol").Range("G12").Formula = "=IF(F12="""","""",YEAR(F12))"
Selection.AutoFill Destination:=Range("G12:G"), Type:=xlFillDefault

End Sub

S'il est quelqu'un qui peut me dire ou se trouve le problème et mille merci d'avance
A voir également:

6 réponses

Ivanhoe
 
Bonsoir,
l'erreur est dans l'adresse de la plage de destination

Selection.AutoFill Destination:=Range("G12:G"), Type:=xlFillDefault
est à corriger en
Selection.AutoFill Destination:=Range("G12:G200"), Type:=xlFillDefault
(par exemple, pour étendre la formule de G12 jusqu'à G200
0
gham Messages postés 48 Statut Membre 6
 
merci Ivanhoe, j'ai essayé mais toujours le même le problème et le même message
0
Ivanhoe
 
Et comme ça ?

Sub FormulEtendtre()

With Worksheets("Tabscol").Range("G12")
.Formula = "=IF(F12="""","""",YEAR(F12))"
.AutoFill Destination:=Range("G12:G200"), Type:=xlFillDefault
End With

End Sub
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
Bonsoir,

A mon avis tu as l'erreur car tu as une autre feuille de sélectionnée lorsque tu lances ta macro.
Commence par Worksheets("Tabscol").select
ou bien sers toi de l'aide excel si tu ne veux pas la sélectionner
Set sourceRange = Worksheets("Sheet1").Range("A1:A2")
Set fillRange = Worksheets("Sheet1").Range("A1:A20")
sourceRange.AutoFill Destination:=fillRange


eric
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
gham Messages postés 48 Statut Membre 6
 
Merci les amis, j'ai essayé la formule de Ivanhoe et ça bien marché,
tous mes respects à vous tous. eriiic, je vais essayer ta formule aussi bientôt et je vais te répondre.
Merci encore.
0
Hebus
 
Bonjour,
J'utilise Excel 2002

j'ai un probleme similaire, je cherche a realiser une macro qui me permette de realiser une copie incrementee d'une selection de cellulle selon un nombre place dans une autre cellule.

Plus precisement :

j'ai la valeur 3 en A1

j'aimerai faire une copie incrementee des celulles B1:B5 de 3 colonnes donc avoir au final :

B1:D5

lorsque j'utilise

Selection.Autofill Destination :=

quelque soit la syntaaxe que j'utilise j'0btiens l'erreur 1004.
Par exemple pour un cas simple de copie incrementee d'une seule cellule :
Cellule.Autofill Destination:=Cellule.Resize(Range("A1"),1)

Avez vous des idees sur l'erreur que j'ai pu faire ?

Merci d'avance
0