Menu

Macro - Formule répétée puis collé-valeur [Résolu]

Sirithhyando 49 Messages postés mercredi 16 avril 2014Date d'inscription 9 février 2018 Dernière intervention - 8 févr. 2018 à 15:15 - Dernière réponse : Sirithhyando 49 Messages postés mercredi 16 avril 2014Date d'inscription 9 février 2018 Dernière intervention
- 9 févr. 2018 à 18:13
Bonjour,

J'aurais besoin de votre aide.
J'ai fais une macro simple :
Sub dup_formule()
Dim dernligne As Long
'
' dup_formule Macro
'
' Touche de raccourci du clavier: Ctrl+a
'
dernligne = Range("B" & Rows.Count).End(xlUp).Row
Range("A2").AutoFill Destination:=Range("A2:A" & dernligne), Type:=xlFillDefault
Range("D2").AutoFill Destination:=Range("D2:D" & dernligne), Type:=xlFillDefault


End Sub

Elle fonctionne bien, mais disons que la dernière ligne est à 17021 alors ça augmente le nombre de formule drastiquement et le fichier excel devient inutilisable.

Après quelques recherche, la solution semble être de modifier la macro afin qu'elle colle le résultat de la formule plutôt que d'inscrire la formule comme tel.

Ceci-dit, je n'ai aucune idée comment faire.

En passant, j'ai pu faire la macro plus haut par les nombreuses aides que j'ai reçu de votre part dans le passé et vous en remercie beaucoup.

À bientôt
Afficher la suite 

Votre réponse

3 réponses

julia Namor 391 Messages postés jeudi 27 mars 2014Date d'inscription 18 mai 2018 Dernière intervention - 8 févr. 2018 à 20:47
+1
Utile
Bonjour
Voila une Une solution

Sub Bouton1_Cliquer()

Dim dernligne As Long
'
' dup_formule Macro
'
' Touche de raccourci du clavier: Ctrl+a
'
dernligne = Range("B" & Rows.Count).End(xlUp).Row
Range("A2").AutoFill Destination:=Range("A2:A" & dernligne), Type:=xlFillDefault
Range("D2").AutoFill Destination:=Range("D2:D" & dernligne), Type:=xlFillDefault
Range("A2:A" & dernligne).Value = Range("A2:A" & dernligne).Value
Range("D2:D" & dernligne).Value = Range("D2:D" & dernligne).Value
End Sub


bien cordialement
Cette réponse vous a-t-elle aidé ?  
julia Namor 391 Messages postés jeudi 27 mars 2014Date d'inscription 18 mai 2018 Dernière intervention - 8 févr. 2018 à 21:54
Sub Bouton1_Cliquer()

Dim dernligne As Long
'
' dup_formule Macro
'
' Touche de raccourci du clavier: Ctrl+a
'
dernligne = Range("B" & Rows.Count).End(xlUp).Row
Range("A2").AutoFill Destination:=Range("A2:A" & dernligne), Type:=xlFillDefault
Range("D2").AutoFill Destination:=Range("D2:D" & dernligne), Type:=xlFillDefault
Range("A2:A" & dernligne).Formula = Range("A2:A" & dernligne).Value
Range("D2:D" & dernligne).Formula = Range("D2:D" & dernligne).Value
End Sub
Sirithhyando 49 Messages postés mercredi 16 avril 2014Date d'inscription 9 février 2018 Dernière intervention - 9 févr. 2018 à 18:13
Excellent! Ça fonctionne très bien.
Merci beaucoup
Commenter la réponse de julia Namor