Macro

Fermé
mickabak Messages postés 7 Date d'inscription mercredi 28 novembre 2012 Statut Membre Dernière intervention 11 décembre 2012 - Modifié par irongege le 11/12/2012 à 15:50
mickabak Messages postés 7 Date d'inscription mercredi 28 novembre 2012 Statut Membre Dernière intervention 11 décembre 2012 - 11 déc. 2012 à 15:44
Bonjour,

Je cherche à faire un tableau sur excel avec 2 colonnes :
--> 1ere colonne une série de chiffres saisi par un opérateur
--> 2eme colonne le jour dsaisi en automatique.
Il faut faire en sorte que la date de saisi ne change pas lorsque je vais ouvrir ce fichier le lendemain ou plus tard et si c'est possible que l'opérateur ne puisse pas resaisir sur une cellule qu'il a déjà saisi dans la 1ere colonne.

Merci pour votre aide
A voir également:

6 réponses

ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
Modifié par ccm81 le 28/11/2012 à 16:05
Bonjour

un complément à la proposition de g (cordiales salutations)
pour date+heure de saisie et protection de la cellule se saisie
RQ. la protection ne sera effective que si la feuille est protégée

Private Sub Worksheet_Change(ByVal Target As Range)
i = Target.Row
If Target.Column = 1 Then 'Saisie en colonne 1
Cells(i, 2).Value = Now 'Date fixée en colonne 2
ActiveSheet.Unprotect ' de-proteger la feuille
Cells(i, 1).Locked = True ' proteger cellule saisie
ActiveSheet.Protect 'proteger la feuille
End If
End Sub

bonne suite
1
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
28 nov. 2012 à 17:53
est ce que ceci correspond?
https://www.cjoint.com/?3KCr0KKx62r

bonne suite
1
mickabak Messages postés 7 Date d'inscription mercredi 28 novembre 2012 Statut Membre Dernière intervention 11 décembre 2012
29 nov. 2012 à 12:05
Il me reste un petit soucis,

ça ne fonctionne plus une fois que je dépasse les cellules en jaune dans le fichier joint.

Que faire ?

Merci d'avance
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
29 nov. 2012 à 14:07
normal, je n'ai déverrouillé que cette plage
donc
1. déprotéger la feuille
2. déverrouiller la suite de la plage
2. re-protéger la feuille

bonne suite
0
mickabak Messages postés 7 Date d'inscription mercredi 28 novembre 2012 Statut Membre Dernière intervention 11 décembre 2012
Modifié par mickabak le 29/11/2012 à 14:25
Désolé mais je n'y arrive pas.
De plus quand j'enlève la protection de la feuille pour supprimer ce qui est saisi dans la colonne A, les cellules 7/8/9/10 ne fonctionne plus. ça me met erreur 1004.
Le fait que je sois en ECEL 2010 pose peut être problème ???
Merci
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
Modifié par ccm81 le 29/11/2012 à 14:30
normal,
ajoutes cette ligne au code (qui te permet de ne pas déclencher la procedure si plus d'une cellule est sélectionnée)

Dim i As Long 
If Target.Cells.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("$A:$A")) Is Nothing Then

bonne suite
0
mickabak Messages postés 7 Date d'inscription mercredi 28 novembre 2012 Statut Membre Dernière intervention 11 décembre 2012
11 déc. 2012 à 15:44
bonjour,

voici le code que j'ai sur ma feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Long
If Target.Cells.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("$A:$A")) Is Nothing Then
If Target = "" Then Exit Sub
i = Target.Row
Cells(i, 2).Value = Now 'Date fixée en colonne 2
ActiveSheet.Unprotect 'déproteger la feuille
Cells(i, 1).Locked = True 'verrouiller cellule saisie
Cells(i, 2).Locked = True 'verrouiller cellule date
ActiveSheet.Protect 'protéger la feuille
End If
End Sub

Que faut il que je rajoute pour que je puisse saisir en colonne 1 et 2 et que la date se mette en colonne 3 ?

Merci de votre aide.
0
g Messages postés 1262 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 15 mai 2017 572
28 nov. 2012 à 13:20
Bonjour,

Code à copier dans le module de la feuille concernée (Alt+F11:

Private Sub Worksheet_Change(ByVal Target As Range)
i = Target.Row
If Target.Column = 1 Then 'Saisie en colonne 1
Cells(i, 2).Value = Date 'Date fixée en colonne 2
End If
End Sub

Cordialement.
0
mickabak Messages postés 7 Date d'inscription mercredi 28 novembre 2012 Statut Membre Dernière intervention 11 décembre 2012
28 nov. 2012 à 14:13
Merci mais ça ne fonctionne pas.

Je n'ai peut etre pas été clair.
1) Je veux saisir une valeur en colonne (251647)
2) Je veux que la date et l'heure de saisie s'affiche en colonne 2 en automatique
3) Il faut que la date soit figée de tel sorte que lorsque j'ouvre le fichier le lendemain les dates ne changent pas pour les cellules déjà saisie
4) Il faut que je ne puisse pas modifier les saisis que j'ai déjà fait en colonne 1.

Merci
0

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

Posez votre question
mickabak Messages postés 7 Date d'inscription mercredi 28 novembre 2012 Statut Membre Dernière intervention 11 décembre 2012
29 nov. 2012 à 08:47
Merci beaucoup a tous.

ccm81 ça fontionne avec le fichier joint.

Impec !!!!

Encore Merci
0
mickabak Messages postés 7 Date d'inscription mercredi 28 novembre 2012 Statut Membre Dernière intervention 11 décembre 2012
28 nov. 2012 à 16:19
Bonsoir,

Ca ne fonctionne toujours pas, du moin ça fait pas ce que je veux.
Il faut que le date s'inscrive quand je saisi dans la 1ere colonne et non pas quand je vais dessus.

De plus pour le bloquage des cellules en colonne 1 une fois la saisie faite ça ne fonctionne pas.

Merci d'avance pour votre aide.
-1