macro pour appliquer formule

  • Initiateur de la discussion Initiateur de la discussion micktriathlon
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

M

micktriathlon

Guest
Bonjour.
Tout les jours je dois étirer une formule sur ma feuille de 14000 lignes,
C'est assez long et je penses qu'une macro doit me permettre de faire cela automatiquement
mais comment faire ???
Merci
 
Re : macro pour appliquer formule

bonjour micktriathlon le forum
en supposant ta formule en cell b1
Sub autofill1()
Application.ScreenUpdating = False
Range("b1").Select
Selection.autofill Destination:=Range("b1:b14000")
End Sub'salutations
 
Re : macro pour appliquer formule

Bonjour à tous,

4 autres possibilités en VBA :
Colles le code suivant dans un module VBA et lances la macro (touche F5)
Tes 14000 cellules sur 4 colonnes seront remplies en un clin d'oeil

Code:
Sub EtireFunction()
Dim i&

For i = 1 To 14000
Cells(i, 1) = i
Cells(i, 2) = Application.WorksheetFunction.Rept("Cellule " & i, 1)
Cells(i, 3) = Cells(i, 1) - 1
Cells(i, 4) = Cells(i, 1) & "  " & Cells(i, 2)
Next i
End Sub

Le principe :
Création d'une boucle de 1 à 14000
1er cas : Cells(i, 1) = i
colonne 1 : la cellule concernée prend une valeur définie (i dans le cas présent)

2ème cas : Cells(i, 2) = Application.WorksheetFunction.Rept("Cellule " & i, 1)
colonne 2 : attribution d'une formule. Equivaut à utiliser une fonction prédéfinie dans Excel (ou une fonction qui tu a créé précédement)

3ème cas :Cells(i, 3) = Cells(i, 1) - 1
Colonne 3= une opération : cellule A1-1 par exemple

4ème cas :Cells(i, 4) = Cells(i, 1) & " " & Cells(i, 2)
Colonne 4 = utilisation de la valeur contenue dans plusieurs cellules

Il y a certainement d'autres cas possibles.
A ta disposition pour plus de renseignements

Bonne soirée
Kotov

Edit : Bonjour PierreJean, le temps d'écrire ma macro, et me voilà battu au sprint !
 
Re : macro pour appliquer formule

Bonsoir à tous

Une xième solution, si tu veux recopier la cellule x1 vers la x14000. Tu te positionnes sur la cellule et tu cliques :

Code:
Sub recopie()
    Selection.Copy
    ActiveCell.Offset(13999, 0).Value = ActiveCell.Value
    Range(Selection, Selection.End(xlDown)).Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
End Sub

Eric
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
23
Affichages
676
Retour