Cellule coloriée si reactivé

Résolu/Fermé
eric2027 - 30 sept. 2010 à 15:35
 eric2027 - 22 oct. 2010 à 10:46
Bonjour, je voudrais que ma cellule se colore en rouge par exemple lorsque je change 2 fois ce qui il y a dedans
par avance merci
Éric



99 réponses

re

j'ai oublié de préciser que la valeur c42 du 1er classeur doit se retrouver en b8 sur le 2ème classeur

@+ Éric
0
re

j'ai un souci, quand je copie la macro dans janvier, il me donne comme un message ' erreur d'exécution '1004'
erreur définie par l'application ou par l'objet

je t'envois ce que j'ai fait

Private Sub Workbook_Open()
Dim chemin As String
chemin = "'" & ThisWorkbook.Path & "\\"
Range("C42") = ExecuteExcel4Macro(chemin & "\\Décembre.xls'!c42")
Call StopClign
Call Clign
End Sub

sur le mois de Décembre, j'ai fait

Private Sub Workbook_Open()
Call StopClign
Call Clign
End Sub

j'ai bo faire des tests et des tests mais j'ai toujours ce message

c ou que je me suis trompé

Éric
0
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
12 oct. 2010 à 16:42
Sur le fichier décembre, mieux vaux nommer la cellule C42 comme je te l'ai expliqué. Clic sur la cellule C42 Insertion/Nom/Définir nomme la source
ensuite ouvre le fichier deuxième fichier et remplace le code comme je te l'ai également expliqué par celui ci que j'ai actualisé (cellule B8 du 2éme fichier est égale à C42 du premier fichier)


Private Sub Workbook_Open()
Dim chemin As String
chemin = "'" & ThisWorkbook.Path & "\\"
Range("B8") = ExecuteExcel4Macro(chemin & "\\Décembre.xls'!source")
Call StopClign
Call Clign
End Sub
0
re
j'ai fait ce que tu m'as dit et j'ai le même message, voila ce que j'ai fait

momn code source est " eric"


Private Sub Workbook_Open()
Dim chemin As String
chemin = "'" & ThisWorkbook.Path & "\\"
Range("B8") = ExecuteExcel4Macro(chemin & "\\Décembre.xls'!eric")
Call StopClign
Call Clign
End Sub
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
Modifié par Mike-31 le 12/10/2010 à 18:24
Bizarre, j'ai testé le code à plusieurs reprises sans problème. Je pense que tes ActiveX de Microsoft ne sont pas activés

sans voir ta configuration et éviter les erreurs, on va le faire par formule

remet le code qui va bien comme il était

Private Sub Workbook_Open()
Call StopClign
Call Clign
End Sub


ensuite ouvre les deux fichiers, pointe la cellule C42 et Edition/Copier
pointe la cellule B8 sur le deuxième fichier Edition/Collage Spécial clic sur Avec Liaison et Ok

A chaque ouverture du deuxième fichier mettre à jour les liaisons
A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
re

super ça fonctionne, j'ai une dernière question à te poser "est il possible de mettre en grisé annulé quand tu veux enregistrer sous ou enregistrer, ou encore enregistrer automatiquement dès que l'on fait une manip sur le fichier, c a d que quand on rouvre le fichuer, ce dernier apparaisse avec les nouvelles modifs

merci pour la solution que tu as trouvé

Éric
0
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
12 oct. 2010 à 22:20
Re,

Désactiver la touche Annuler est dangereux pour les utilisations futures, mais il est possible d'activer un enregistrement automatique suivant critère sous VBA, soit lorsqu'on change des valeurs dans des cellules bien précise ou losque qu'on déplace la cellule active etc ... ou à la fermeture du fichier sans que l'on ai à répondre par oui ou non voulez vous enregistrer les modifictions apportées ...
0
re

ok pour la 2ème solution

activer un enregistrement automatique suivant critère sous VBA, soit lorsqu'on change des valeurs dans des cellules bien précise ou lorsque qu'on déplace la cellule active etc ... ou à la fermeture du fichier sans que l'on ai à répondre par oui ou non voulez vous enregistrer les modifications apportées ...

Éric
0
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
12 oct. 2010 à 22:38
Que veux tu un enregistrement automatique lorsqu'on change les valeurs dans des cellules bien précise lesquelles !!

Ou lorsqu'on se déplace sur la feuille ce qui sera contraignant avec des enregistrement permanant

Ou lorsqu'on ferme le fichier

et sur quel fichier, celui sur lequel nous avons travaillé
0
sur les cellules b9;b39 c9:c39 d9;d39 e9;e39 f9:f39 g9:g39

sur le fichier lequel nous avons travailler

Éric
0
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
Modifié par Mike-31 le 13/10/2010 à 09:20
Re,

Dans le module Visual Basic (clic droit sur un onglet de feuille/Visualiser le code)
double clic sur Thiswokwook ou clic et Entrée

tu trouveras ce code, ajoute la ligne en gras ActiveWorkbook.Save


Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next
If Not Intersect([B9:B39,C9:C39,D9:D39,E9:E39,F9:F39,G9:G39], Target) Is Nothing Then
Target.Offset(0, 9) = Target.Offset(0, 9) + 1
If Target.Offset(0, 9) >= 2 Then
Target.Interior.ColorIndex = 38
If Target = "" Then
Target.Offset(0, 9) = ""
Target.Interior.ColorIndex = xlNone
End If
End If
End If
Call Protection_Cellule_Couleur
Call StopClign
Call Clign
ActiveWorkbook.Save
End Sub

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
bonjour Mike

cool ça fonctionne par contre sur mes 2 feuilles "décembre, janvier" quand je rentre une donnée en b40 decembre et j'enregistre et que je veux ouvrir janvier, il me demande de mettre ou non a jour, est il possible de ne pas avoir ce message et que ça se mette à jour automatiquement

Éric
0
salut Mike

un autre petit souci, je voudrais qu'en cellule c42, il y ai un décompte d'heure ne pouvant aller au dessus de 30 et bloquer cette cellule à 30 maxi

Éric
0
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
15 oct. 2010 à 13:22
Salut,

Qu'as tu en C42, une formule de calcul exemple =somme(C9:C40) ou tu saisis les données manuellement
0
re

en c41, je ne dois pas dépasser 25, si ça dépasse 25 le surplus va en c2 d'ou la formule

=B40:E40-C41 qui me donne la différence en c42

mais en ce c42 je voudrais une formule qui me permette d'aller jusqu'à 30 et bloquer à 30, même si il y a plus

Éric
0
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
15 oct. 2010 à 14:25
Il doit y avoir une erreur de fichier ou explique moi, sur mon fichier,
en B40 j'ai cette formule =SOMME(B9:B39)
rien en C40 ni D40, D40 et E40 !

en B41 j'ai =SOMME(B10:B40) (même formule qu'en B40 seulement un décalage d'une cellule dans ce calcul la cellule B40 est additionnée deux fois bizarre !

tu peux remettre un fichier avec tes formules sur un post
0
re
en effet j'ai essayé d'améliorer mon fichier de base, je oublié de te l'écrire, aussi je t'envoie mon nouveau fichier sur cjoint

eric
0
re

ah oui pour le 2ème dial, vu que le 1er était résolu, j'ai pensé que je n'avais plus accès à la discution, et comme je ne savais comment te contacté autre que sur un autre post, j'en fait un autre

Éric
0
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
15 oct. 2010 à 14:55
Tu n'as pas collé le lien pour récupérer ton fichier
0
ça me dit ça

"Impossible d'accéder au presse-papier"
0
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
15 oct. 2010 à 16:00
Il est possible que la mémoire soit saturée, éteint ton ordi et ralume le

ensuite clic sur ce lien
https://www.cjoint.com/

clic sur Parcourir pour sélectionner ton fichier
Clic sur créer le lien
mets en surbrillance le lien bleu généré en haut de la page, clic droit dessus/copier
vas sur le post que tu veux m'envoyer et clic droit coller
0