Macro - Formule répétée puis collé-valeur

Résolu/Fermé
Sirithhyando Messages postés 49 Date d'inscription mercredi 16 avril 2014 Statut Membre Dernière intervention 17 octobre 2018 - 8 févr. 2018 à 15:15
Sirithhyando Messages postés 49 Date d'inscription mercredi 16 avril 2014 Statut Membre Dernière intervention 17 octobre 2018 - 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
A voir également:

1 réponse

julia Namor Messages postés 524 Date d'inscription jeudi 27 mars 2014 Statut Membre Dernière intervention 13 janvier 2024 33
8 févr. 2018 à 20:47
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
1
julia Namor Messages postés 524 Date d'inscription jeudi 27 mars 2014 Statut Membre Dernière intervention 13 janvier 2024 33
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
0
Sirithhyando Messages postés 49 Date d'inscription mercredi 16 avril 2014 Statut Membre Dernière intervention 17 octobre 2018 1
9 févr. 2018 à 18:13
Excellent! Ça fonctionne très bien.
Merci beaucoup
0