Double saisie sur Excel

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
Configuration: Windows XP
Internet Explorer 7.0

6 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    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é.
    1. 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
      1. Contributeur
        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 ?
        1. 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.
          1. Contributeur
            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.
            1. 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
          2. Contributeur
            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.