VBA - Étirer formule vers le bas = F2+Enter

  • Initiateur de la discussion Initiateur de la discussion Fredox
  • 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 !

Fredox

XLDnaute Occasionnel
Bonjour,
J'ai mis en place ces formules pour étirer vers le bas les formules présentes en ligne 6, entre Q et V.
Si étendre le formule à bien fonctionné, en revanche il affiche le résultat de la ligne 6 dans toutes les lignes suivantes.
Je suis obligé de revalider chaques cellules (F2+Enter) pour que le bon résultat s'affiche.

Y aurait-il une solution pour directement avoir mon résultat ?

Code:
Range("Q6:Q" & Range("c65536").End(xlUp).Row).Value = Range("Q6").Formula
Range("R6:R" & Range("c65536").End(xlUp).Row).Value = Range("R6").Formula
Range("S6:S" & Range("c65536").End(xlUp).Row).Value = Range("S6").Formula
Range("T6:T" & Range("c65536").End(xlUp).Row).Value = Range("T6").Formula
Range("U6:U" & Range("c65536").End(xlUp).Row).Value = Range("U6").Formula
Range("V6:V" & Range("c65536").End(xlUp).Row).Value = Range("V6").Formula


Merci
 
Bonjour

Deux façons de faire
VB:
Sub test()
Dim formule As String
formule = "=ROW()*COLUMN()"
Range("Q6:Q" & Cells(Rows.Count, 3).End(xlUp).Row).Formula = "=ROW()*COLUMN()"
Range("R6:R" & Cells(Rows.Count, 3).End(xlUp).Row).Formula = formule
End Sub
 
Re

Ci-dessous autre exemple
(à tester sur une feuille vierge)
VB:
Sub test2()
Dim Derlig As Long ' ce qui sert
'////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
'les lignes ci-dessous ne servent qu'à insérer des formules pour test
Range("C6:C17") = 1
Range("Q6:V6") = Array("=NOW()+RAND()", "=INT(ROW()*PI())", "=INT(COLUMN()/PI())*ROW()", "=4*2*5*10*2*2", "=LOG(ROW())", "=ROW()*2")
'////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Derlig = Range("c65536").End(xlUp).Row ' ce qui sert
Range("Q6:V" & Derlig).FillDown 'ce qui sert
End Sub
 
Bonjour Staple1600,
Je viens de tester la deuxième version, le problème reste le même, il étire bien la formule mais affiche le contenu identique à la cellule étirée. Une fois fait F2+Enter, le bon résultat s'affiche.
 
Staple1600,

Pour la version 1 le résultat ne correspond pas puisque la formule n'est pas la bonne.
En revanche c'est peut-être une bonne piste, au lieu d'étirer la formule est-ce que je peux la ressaisir ?

Ma formule originale est: " =si(et(N6=100%);H6="OK";L6;"") "
Comment remplacer les N, H et L par dernLigne ?

Merci encore.
 
Re

Comme j'ai pris le temps de refaire un exemple
(plutôt que de jeter, je poste)
VB:
Sub Test_3()
Dim Derlig As Long
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = False
Randomize 1600
Rows("7:777").Clear
Range("C6:C" & Application.RandBetween(16, 27)) = "=""Staple""&1600+ROW()"
Range("Q6:V6") = Array("=INT(RAND()*1600)", "=INT(ROW()*PI())", "=INT(COLUMN()/PI())*ROW()", "=4*2*5*10*2*2", "=LOG(ROW())", "=ROW()*2")
Derlig = Cells(Rows.Count, 3).End(xlUp).Row
Range("Q6:V" & Derlig).FillDown
[Q6].CurrentRegion.Columns.AutoFit
Cells(Derlig, 3).Font.Bold = -1
Rows(Derlig).SpecialCells(xlCellTypeFormulas, 3).Interior.Color = vbYellow
End Sub
PS: Regarde la ligne qui pourra te servir concernant le calcul automatique.

Freedox à dit:
Pour la version 1 le résultat ne correspond pas puisque la formule n'est pas la bonne.
NB: Les codes que je t'ai proposés (en prenant soin de le préciser) ne sont que des codes de test.
Donc à tester sur une feuille vierge.
 
Re

•>Freedox
C'est dingue que mes messages ne soient pas lu attentivement.
😱
Epuisé à force de répéter¸ Staple¸ le teint blême à dit:
NB: Les codes que je t'ai proposés (en prenant soin de le préciser) ne sont que des codes de test.
Donc à tester sur une feuille vierge.
Ce qui veut dire que leur seule utilité est illustrative et/ou "pédagogique".
Ni plus, ni moins.
🙄
 
- 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

Discussions similaires

Réponses
7
Affichages
797
Réponses
1
Affichages
1 K
H
Réponses
19
Affichages
6 K
  • Question Question
Réponses
1
Affichages
1 K
Retour