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

pb definir une formule à une cellule

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

W

walker59

Guest
Bonsoir , voila mon petit pb et que j'ai definis une plage de cellule b3:v3 qui est egale à 12:15 au format heure ,chaque cellule à la même formule, mais voila parfois il y'a un jour ou il y'a une heure supplementaire, donc une cellule par exemple c3 aura la valeur 13:15 ,au momment du changement la formule de cette cellule disparait , ce que j'aimerais c'est que si je reviens à 12:15 sur c3 il me remet la formule de depart bon courage
 
Re : pb definir une formule à une cellule

Bonjour walker59,

Mais c'est qu'il est amusant ce petit problème !

Du moins si j'ai bien compris 🙂

Dans le code de la feuille (clic droit sur l'onglet et Visualiser le code) :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim h As Double, plage As Range, cel As Range
Static flag As Boolean
h = TimeValue("12:15")
Set plage = [B3:V3]
Set Target = Intersect(Target, plage)
If flag Or Target Is Nothing Then Exit Sub
Target.Select 'facultatif
'---recherche de la formule---
For Each cel In plage
  If cel.HasFormula Then GoTo 1
Next
MsgBox "Y a plus de formule !", 48: Exit Sub
'---remise en place de la formule---
1 flag = True
For Each Target In Target
  If Target = h Then Target.FormulaR1C1 = cel.FormulaR1C1
Next
flag = False
End Sub
Fichier joint.

Edit : si la formule était matricielle, il faudrait autre chose...

A+
 

Pièces jointes

Dernière édition:
Re : pb definir une formule à une cellule

super job75 cela fonctionne ,je te remercie ton code en vba et pour moi du charabia mais sa fonctionne , dis moi toi qui est sans conteste un expert par rapport à moi tu n'a pas quelque chose de plus simple , sinon te prends pas la tête je ferais avec , merci encore à toi
 
Re : pb definir une formule à une cellule

Re,

Ben si, on peut faire un peu plus simple.

On peut se passer de la variable flag avec un test supplémentaire :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim h As Double, plage As Range, cel As Range
h = TimeValue("12:15")
Set plage = [B3:V3]
Set Target = Intersect(Target, plage)
If Target Is Nothing Then Exit Sub
Target.Select 'facultatif
'---recherche de la formule---
For Each cel In plage
  If cel.HasFormula Then GoTo 1
Next
MsgBox "Y a plus de formule !", 48: Exit Sub
'---remise en place de la formule---
1 For Each Target In Target
  If Not Target.HasFormula And Target = h Then _
    Target.FormulaR1C1 = cel.FormulaR1C1
Next
End Sub
J'utilisais flag un peu par habitude...

Fichier (2).

A+
 

Pièces jointes

- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

S
Réponses
2
Affichages
1 K
stepasq
S
T
Réponses
3
Affichages
938
T
Réponses
3
Affichages
887
M
Réponses
6
Affichages
1 K
Markotxe
M
P
Réponses
2
Affichages
698
ptifanou
P
J
Réponses
3
Affichages
3 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…