Double saisie sur Excel

p-y -  
gbinforme Messages postés 15481 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je travaille sur excel afin de faire une banque de donnée. J'aimerais faire une double saisie afin d'éviter toutes erreurs de transcription. Je dois donc créer deux bases de données identiques et avoir les mêmes données pour qu'il n'y est pas de message d'erreur. Si vous pourriez me dire comment je peux faire ceci, en vous en serait très reconnaissant!


P-y
A voir également:

6 réponses

gbinforme Messages postés 15481 Date d'inscription   Statut Contributeur Dernière intervention   4 730
 
bonjour

J'aimerais faire une double saisie afin d'éviter toutes erreurs de transcription. Je dois donc créer deux bases de données identiques

Quel est l'intérêt d'avoir du double en saisie ?

Ne vaut-il pas mieux fonctionner en miroir ?

La gestion de deux bases suppose qu'il n'y auras aucune erreur d'exécution sinon fini l'égalité.
0
p-y
 
Dans mon cas, le but de la double saisie est de réduire les risques d'erreurs reliées à la transcription de donnée. Le fait est que je fait cette base de donnée pour une clinique de kinésiologie universitaire et que plusieurs personnes auront accès à la base de donnée et que plusieurs étudiants devront transcrire les informations ce qui signifie une augmentation considérable de risques d'erreurs. Le moyen le plus simple serait de limiter l'accès, mais la coordonnateur veut donner ce travail aux étudiants qui doivent compléter leurs heures obligatoires à la clinique.

De plus, les informations de la banque de donnée sont tiré de document papier, donc aucun moyen de confirmer avec une autre base de donnée informatisé, tout doit être vérifié à la main. La double saisie était également une demande du coordonateur lui-même, donc difficile de passer par dessus lui.


Je ne suis pas très à laise avec excel, donc votre aide serait bien apprécié.


P-y
0
gbinforme Messages postés 15481 Date d'inscription   Statut Contributeur Dernière intervention   4 730
 
bonjour

La double saisie était également une demande du coordonateur lui-même, donc difficile de passer par dessus lui.

En fait qu'est-ce que tu veux dire ainsi ?

Les données doivent être saisies de façon identique par 2 personnes et sont validées si elles sont identiques ?
0
p-y
 
Désolé je n'ai peut-être pas été des plus clair. En fait,on créer deux feuilles avec les même colonne. Ex: poids, grandeur, antédédant médicaux. Donc, une première personne entre les données de 10 personnes sur la feuille 1 et une autre entre ces même 10 personnes sur la feuille 2. Si par exemple la saisie de la donnée inscrite en à la cellule B3 n'est pas la même dans les deux feuilles, il y a un blocage de la cellule et la donnée ne peut plus être changé. Ou il porrait simplement avoir une surlgnement de la cellule en ROUGE par exemple lorsque les données d'une même cellule ne correspondrait pas dans la feuille 1 et la feuille 2. De ce fait, le donnée erroné serait plus facile à corriger.
0

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

Posez votre question
gbinforme Messages postés 15481 Date d'inscription   Statut Contributeur Dernière intervention   4 730
 
bonjour

Bon, cette fois-ci j'ai compris que le "coordonateur lui-même" voulait faire ce qu'au début de l'informatique on appelait de la "perfo-vérif" avec les cartes perforées : une personne perforait et la suivante ressaisissait et si les trous ne tombaient pas en face, il fallait refaire la carte.

Je te propose de mettre cette macro événementielle dans thisworkbook de ton classeur (mode d'emploi)
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal sel As Range)
If sel.Count > 1 Then Exit Sub
If Sheets.Count > 2 Then Exit Sub
Dim D As Worksheet
If Sh.Name = Sheets(1).Name Then
    Set D = Sheets(2)
Else
    Set D = Sheets(1)
End If
If D.Cells(sel.Row, sel.Column).Value = "" Then Exit Sub
If Cells(sel.Row, sel.Column).Value = D.Cells(sel.Row, sel.Column).Value Then
    Cells(sel.Row, sel.Column).Interior.ColorIndex = 4
Else
    Cells(sel.Row, sel.Column).Interior.ColorIndex = 3
End If
End Sub

Ton classeur ne doit avoir que 2 feuilles.
Si la personne saisi en premier une cellule : pas de contrôle.
Si la cellule est déjà saisie sur l'autre feuille, la cellule se met en vert si elle est correcte et en rouge si elle est fausse, prête à être corrigée, cependant c'est peut-être la première saisie qui est erronnée.
0
p-y
 
Good on a fini par bien se comprendre. Merci du coup de main, j'ai essayé et c'est exactement ce que je voulais faire. J'ai seulement une dernière petite question. Comme mon classeur possède 4 feuilles au totales, est-ce que je peux limiter la programmation a seulement 2 feuilles. Mes feuilles sont nommées ainsi et dans cet ordre:

1- client
2- saisie 1
3- saisie 2
4- légende

Après cette dernière réponse, mes problème devrait tous être réglé! Merci d'avance!


P-y
0
gbinforme Messages postés 15481 Date d'inscription   Statut Contributeur Dernière intervention   4 730
 
bonjour

Voilà la macro adaptée à ton classeur car comme je n'avais pas tes noms, je ne pouvais pas les deviner.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal sel As Range)
If sel.Count > 1 Then Exit Sub

Dim D As Worksheet
If Sh.Name = "saisie 1" Then
    Set D = Sheets("saisie 2")
ElseIf Sh.Name = "saisie 2" Then
    Set D = Sheets("saisie 1")
Else
    Exit Sub
End If
If D.Cells(sel.Row, sel.Column).Value = "" Then Exit Sub
If Cells(sel.Row, sel.Column).Value = D.Cells(sel.Row, sel.Column).Value Then
    Cells(sel.Row, sel.Column).Interior.ColorIndex = 4
Else
    Cells(sel.Row, sel.Column).Interior.ColorIndex = 3
End If
End Sub

Vérifies bien que sur l'onglet il y a bien : "saisie 1" et "saisie 2", sinon tu corriges.
Après avoir mis la macro dans thisworkbook, tu saisis une même cellule sur les 2 feuilles et tu nous dit le résultat.
0