Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel
Excel Forum d'entraide sur Excel. Vos questions sur les fonctions, formules, manipulations, et tout sujet qui ne trouve pas sa place dans un sous-forum.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/11/2011, 10h33   #1
Invité de passage
 
Homme Ludovic F.
Ingénieur qualité méthodes
Inscription : novembre 2011
Messages : 17
Détails du profil
Informations personnelles :
Nom : Homme Ludovic F.
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Ingénieur qualité méthodes
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : novembre 2011
Messages : 17
Points : 1
Points : 1
Par défaut figer date du jour

Bonjour,

je suis chargé de réaliser le suivi hebdomadaire du contrôle des cotes sur des pièces mécaniques. Ce contrôle est réalisé sur 12 éléments à l'aide de tampons de contrôle validant la conformité de cette pièce.
Pour le suivi, j'ai commencé à construire un fichier excel dans lequel la personne entre à l'aide d'une liste déroulante '1' en cas de conformité, '0' en cas de non conformité. Le fait d'activer la case génère sur la case du dessus la date à l'aide de la formule E36=SI(ESTVIDE(E37);"";AUJOURDHUI()). Le numéro de semaine est générée en E35=SI(E36="";"";ENT(MOD(ENT((E36-2+(JOUR(1)=2)*6)/7)+3/5+((JOUR(1)=2)*208);52+5/28))+1).

Cependant, la date change en fonction du temps, et ça n'aide pas à réaliser mes statistiques. Comment faire, à chaque saisie automatique de la date, pour figer celle-ci et qu'elle ne change pas en fonction de la date du système?

Merci par avance.
kreutzberg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/11/2011, 14h13   #2
Expert Confirmé Sénior
 
Homme Daniel
aucune
Inscription : septembre 2011
Messages : 2 004
Détails du profil
Informations personnelles :
Nom : Homme Daniel
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : aucune

Informations forums :
Inscription : septembre 2011
Messages : 2 004
Points : 4 037
Points : 4 037
Bonjour,

Deux choses :

1. Comment fais-tu changer la valeur de E37 ?
2. Si tu utilise XL2010, regarde la fonction NO.SEMAINE qui fournit maintenant le numéro de semaine à la norme ISO.
__________________
Cordialement.

Daniel

Citation:
La plus perdue de toutes les journées est celle où l'on n'a pas ri.
Chamfort
Daniel.C est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/11/2011, 14h25   #3
Expert Confirmé Sénior
 
Avatar de jfontaine
 
Homme Jérôme FONTAINE
Contrôleur de Gestion
Inscription : juin 2006
Messages : 3 899
Détails du profil
Informations personnelles :
Nom : Homme Jérôme FONTAINE
Âge : 38
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Contrôleur de Gestion

Informations forums :
Inscription : juin 2006
Messages : 3 899
Points : 7 185
Points : 7 185
Bonjour,

pour figer la date de la cellule E36, tu peux utiliser le code ci dessous

Code :
1
2
3
4
5
6
7
8
9
10
11
Private Sub Worksheet_Change(ByVal Target As Range)
 
If Target.Address = "$E$37" And Target.Count = 1 Then
    If Target.Value = 1 Then
        Range("E36").Value = Format(Now, "dd/mm/yyyy")
    Else
        Range("E36").Value = ""
    End If
End If
 
End Sub
__________________
Jérôme

Citation:
"Ils ne savaient pas que c'était impossible, alors ils l'ont fait" - Marc Twain
Si la réponse répond à votre besoin, votre vote nous encouragera.
Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
jfontaine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/11/2011, 14h39   #4
Expert Confirmé Sénior
 
Homme Daniel
aucune
Inscription : septembre 2011
Messages : 2 004
Détails du profil
Informations personnelles :
Nom : Homme Daniel
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : aucune

Informations forums :
Inscription : septembre 2011
Messages : 2 004
Points : 4 037
Points : 4 037
Bonjour,

Oui, sauf si E37 contient une formule, d'où ma question.
__________________
Cordialement.

Daniel

Citation:
La plus perdue de toutes les journées est celle où l'on n'a pas ri.
Chamfort
Daniel.C est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/11/2011, 16h18   #5
Invité de passage
 
Homme Ludovic F.
Ingénieur qualité méthodes
Inscription : novembre 2011
Messages : 17
Détails du profil
Informations personnelles :
Nom : Homme Ludovic F.
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Ingénieur qualité méthodes
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : novembre 2011
Messages : 17
Points : 1
Points : 1
Merci pour ces premiers éléments.

@Daniel:
j'ai créé une liste déroulante avec comme valeurs 0 & 1. Les opérateurs n'ont qu'à cliquer sur la flèche permettant de faire le choix.

@jfontaine:
Merci pour ce code, ça me parait être le bon. Mais, tu ne fais afficher que la date lorsque la pièce est bonne, soit quand la valeur est à 1. Or, j'aimerais également que la date s'affiche lorsque la pièce est mauvaise, soit à 0. Comment rajoutes tu la condition dans cette boucle:

Code :
1
2
3
4
5
6
If Target.Address = "$E$37" And Target.Count = 1 Then
    If Target.Value = 1 Then
        Range("E36").Value = Format(Now, "dd/mm/yyyy")
    Else
        Range("E36").Value = ""
    End If
Enfin, j'aimerais créer un deuxième onglet, où je viens récupérer les numéros de semaines pour chaque mesure et pour chaque pièce en cliquant sur un bouton pour assurer la mise à jour de mes stats. Pouvez-vous me donner une piste s'il vous plait?

Jfontaine, le code que tu m'as fourni ne fonctionne t-il que pour la case E36? Comment vont se compléter les dates lorsque les case F,G,H,I, etc 36 se compléteront?
kreutzberg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/11/2011, 16h26   #6
Membre Expert
 
Avatar de Daranc
 
Inscription : janvier 2007
Messages : 1 166
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 1 166
Points : 1 244
Points : 1 244
je ne comp^rends pas trop ton principe de stat de contrôle
si tu as 12 pièces à vérifier tu dois normalement avoir 12 cellules à remplir soit douze colonne + la date + le n° de semaine soit 15 colonne
tu peut même en avoir une 16 qui valide les 12 saisies
Code :
=SI(NBVAL(c3:n3)=12;1;0)
ceci évite le recours aux formules matricielles
en colonne B une formule genremodifier le code de JP.Fontaine ( avec la 16éme colonne)
Code :
1
2
3
4
5
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Cells(ActiveCell.Row, 14).Offset(-1, 1).Value = 1 Then
           Cells(ActiveCell.Row - 1, 1).Value = Date
End If
End Sub
rapidement les douze saisie étant faite la dernière est validé par entrée donc la date doit etre rentée dans la ligne au dessus en supposant que Entré envoie vers la cellule du bas
si entrée envoi vers la cellule de droite supprimer les offsets

Code :
1
2
3
4
5
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Cells(ActiveCell.Row, 14).Value = 1 Then
           Cells(ActiveCell.Row , 1).Value = Date
End If
End Sub
a tester
__________________
Cordialement
Daranc
Daranc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/11/2011, 16h58   #7
Invité de passage
 
Homme Ludovic F.
Ingénieur qualité méthodes
Inscription : novembre 2011
Messages : 17
Détails du profil
Informations personnelles :
Nom : Homme Ludovic F.
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Ingénieur qualité méthodes
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : novembre 2011
Messages : 17
Points : 1
Points : 1
Hello Daranc,
je viens de joindre la dernière version du fichier avec les premières mesures afin que tu comprennes mieux ce que je souhaite faire. Il y a en effet 12 diamètres à contrôler. Donc pour chaque diamètre, l'opérateur clique au fur et à mesure sur les cases surlignées en jaune et remplis par 0 ou 1 en fonction du contrôle. A chaque fois qu'une valeur est saisie, la date et le numéro de semaine doivent être renseignés.
Fichiers attachés
Type de fichier : zip controle_tampon.zip (138,7 Ko, 10 affichages)
kreutzberg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/11/2011, 08h00   #8
Membre Expert
 
Avatar de Daranc
 
Inscription : janvier 2007
Messages : 1 166
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 1 166
Points : 1 244
Points : 1 244
bon ça à été laborieux
un problème de boucle sans fin

en premier lieu , dans le code de la feuille
Code :
1
2
3
4
5
Private Sub Worksheet_Change(ByVal Target As Range)
If ActiveCell.Value = 1 Or ActiveCell.Value = 0 Then
dateur
End If
End Sub
et dans un module
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
Sub dateur()
Dim L, C
L = ActiveCell.Row
C = ActiveCell.Column
With Sheets("Mesures")
.Unprotect
.Cells(L, C).Offset(-1, 0).Activate
.Cells(L, C).Offset(-1, 0).Value = Date
.Protect
End With
Cells(L, C + 1).Select
End Sub
j'espère que ceci répondra à ton problème
il y a surement quelque chose de moins bricolé mais je n'ai pas trouvé
__________________
Cordialement
Daranc
Daranc est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h02.


 
 
 
 
Partenaires

Hébergement Web