Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Formule dans cellule

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

KTM

XLDnaute Impliqué
Salut chers tous
Cela fait des heures que je teste cette macro mais elle bute au niveau de ( cel.Formula = "=" & cel )
Je ne comprends pas. Quelqu'un pourrait il me corriger ? Merci

Sub Reinitialiser_Base()

Application.ScreenUpdating = False
With Sheets("Base")
.Range("E7:E37").Value = .Range("K7:K37").Value
.Range("N7:W37") = ""
.Range("J7:J37").Value = 0
For Each cel In .Range("E7:E37,M7:M37,J7:J37")
cel.Formula = "=" & cel
Next cel
End With
Application.ScreenUpdating = True

End Sub
 
Bonjour KTM, le forum,
Code:
For Each cel In .Range("E7:E37,M7:M37,J7:J37")
If IsNumeric(CStr(cel)) Then cel.FormulaLocal = "=" & cel Else cel.Formula = "=""" & cel & """"
Next cel
Bonne journée.
 
Ceci est encore plus fort car on traite aussi les valeurs logiques et les valeurs d'erreur :
Code:
For Each cel In .Range("E7:E37,M7:M37,J7:J37")
    If IsNumeric(CStr(cel)) Then
        cel.FormulaLocal = "=" & cel
    ElseIf CStr(cel) = "" Or Application.IsText(cel) Then
        cel.Formula = "=""" & cel & """"
    ElseIf Application.IsLogical(cel) Or IsError(cel) Then
        cel.FormulaLocal = "=" & cel.Text
    End If
Next cel
 
Ce qu'il faut bien comprendre :

- IsNumeric(cel) renvoie True si cel est vide c'est pour cela que j'utilise CStr

- CStr évite aussi un bug si cel est une valeur d'erreur

- FormulaLocal conserve les propriétés de l'ordinateur : séparateur décimal, langue.
 
- 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
8
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…