VBA et formule excel

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 !

SwimCoachNico79

XLDnaute Occasionnel
Bonsoir à tous,
J'ai crée la macro suivante via un enregistrement automatique :

Sub Macro1()
'
' Macro1 Macro
'

'
Application.WindowState = xlMinimized
Application.WindowState = xlNormal
Range("H2").Select
ActiveCell.FormulaR1C1 = _
"=IF(LEN(RC[-2])=0,"""",IF(LEN(RC[-2])<6,RC[-2]/86400,IF(LEN(RC[-2])>6,RC[-2]/1)))"
Range("J11").Select
End Sub

Ma question : cette macro marche pour la cellule "H2" mais comment l'automatiser pour qu'elle fonctionne sur toute la colonne "H:H" de mon onglet.

Merci d'avance pour vos réponses et votre aide.
Bonne soirée,

SCN79
 
Re : VBA et formule excel

Bonjour SCN,

avec ce code:
Code:
Range("H2").Select
ActiveCell.FormulaR1C1 = _
"=IF(LEN(RC[-2])=0,"""",IF(LEN(RC[-2])<6,RC[-2]/86400,IF(LEN(RC[-2])>6,RC[-2]/1)))"
Selection.AutoFill Destination:=Range("H2:H" & Range("F65535").End(xlUp).Row), Type:=xlFillDefault
à+
Philippe
 
Re : VBA et formule excel

Bonjour à tous,
Salut Philippe,

Un peu plus court :

VB:
Sub Test()
Range("H2:H" & Range("F65535").End(xlUp).Row).Formula = "=IF(LEN(RC[-2])=0,"""",IF(LEN(RC[-2])<6,RC[-2]/86400,RC[-2]/1))"
End Sub

A+ à tous
 
Re : VBA et formule excel

Bonsoir à tous,

Par contre ce n'est peut-êtree pas une bonne idée de remplir toute le colonne H si ça ne te sert pas dans l'immédiat.
Tu vas alourdir ton classeur inutilement.
Il vaut mieux l'étendre au fur et à mesure.
Ou bien convertir ta plage utile en Tableau (2010), l'extension se fera automatiquement.

eric
eric
 
Re : VBA et formule excel

Re,

Bonsoir à tous,

Par contre ce n'est peut-êtree pas une bonne idée de remplir toute le colonne H si ça ne te sert pas dans l'immédiat.
Tu vas alourdir ton classeur inutilement.
Il vaut mieux l'étendre au fur et à mesure.
Ou bien convertir ta plage utile en Tableau (2010), l'extension se fera automatiquement.

eric
eric
@Eric:

dans les solutions de Jean-Claude et la mienne, on ne propage pas la formule sur toute la colonne H
La formule faisant référence à la colonne F, on en tient compte avec ceci:
Range("H2:H" & Range("F65535").End(xlUp).Row)

il n'y a pas à craindre un alourdissement inutile du fichier

à+
Philippe
 
- 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
4
Affichages
155
Réponses
7
Affichages
108
  • Question Question
Microsoft 365 VBA sur outlook
Réponses
14
Affichages
998
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
506
Réponses
3
Affichages
444
Réponses
21
Affichages
2 K
Retour