Son sous condition dans excel 2003

Résolu
dancesurfer -  
 dancesurfer -
Bonjour,

Je voudrait arrivé dans une colonne si le terme "finded" ( ce terme peut revenir plusieurs fois ) est placé par excel suite à une condition ( si ) que un beep se fasse entendre, en sachant que je suit obligé de travaillé sous excel 2003 et que ce fichier doit être placé dans un scanner à code barre.

Merci d'avance à tous pour vos réponses.

Bonne journée.

4 réponses

  1. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 784
     
    C'est très vague comme explication !
    Quelle est l'évènement qui entraine l'apparition du "finded" ?
    Comment identifie-t-on la ligne ?
    A quoi ressemble le classeur ?
    Peut-être qu'avec un exemple sur http://cijoint.fr/ ce serait plus explicite.

    En attendant, une macro qui teste l'existence de "finded" dans la cellule C1 :
    Private Sub Worksheet_Change(ByVal Target As Range)
      If Cells(1, "c").Value = "finded" Then Beep
    End Sub
    
    0
    1. dancesurfer
       
      Bonjour Patrice33740, je pense qu'il n'y a pas besoin d'envoyer le fichier tu as trouvé ce qu'il me fallait, seul chose si ce n'est pas trop te demander pourrais tu me dire qu'elle modification du code je doit effectuer pour que cela ce fasse sur 1000 cellules.

      Merci d'avance pour ton aide et pour ce que tu ma déjà envoyer.

      Bien à toi Dancesurfer
      0
    2. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 784
       
      Les 1000 cellules ne passent passent pas à "finded" simultanément !!!
      Si j'ai bien compris le but de la démarche, il n'y a qu'un cellule qui change à chaque scan.
      Il me parait donc facile, en connaissant l'évènement qui provoque ce changement, d'identifier la cellule qui va changer.

      Il y a 2 possibilité :
      - soit on peut identifier la ligne qui change, et dans ce cas on teste qu'une cellule (c'est une adaptation du code ci-dessus).
      - soit, avec une formule, on comptabilise le nombre de "finded" dans une cellule dédiée à cet effet et on surveille l'évolution de cette cellule (c'est moins simple et de plus il faut une cellule supplémentaire qui servira de mémoire pour déceler les évolutions) .
      0
    3. dancesurfer
       
      Bonsoir, je vous mets mon fichier en attachement avec de plus amples explications en feuil3, encore un tout grand merci pour votre aide
      http://www.cijoint.fr/cjlink.php?file=cj201108/cijZJW5548.xls
      0
    4. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Bonsoir,

      ton fichier exemple avec 1000 finded dedans ne sert à rien (sauf si tu veux autant de beep que de finded...)
      Explique plutôt le fonctionnement de ton vrai fichier.
      Comment tu l'utilises et à quel moment tu veux un beep.
      Fais l'effort de lire le post 3 et appuie-toi dessus pour expliquer

      Tu disais : "finded" ( ce terme peut revenir plusieurs fois ) est placé par excel suite à une condition ( si )
      C'est là dessus qu'il faut t'expliquer, il n'y a pas une seule formule dans ton fichier

      eric
      0
  2. dancesurfer
     
    Bonsoir,

    C'est le vrai fichier, le but est de placer des données(numéro de séries) en page data(feuil 2; colonne A) et avec le gun (scanner code barre ) de retrouver c'est numéros de séries dans un lot de pièces pouvant aller jusque mille unités( les numéros de séries sont scanner en feuil 1 colonne A). Il peut n'y avoir que une unités a retrouver comme 999.

    C'est pourquoi le terme finded est placé suite à un recherchev. (je ne connais pas le vba tout est donc fait avec des conditions et des outils excel ).c'est numéros de séries peuvent arriver dans n'importe quel ordre ou ne pas faire partie de la base de donnée.
    La ligne en feuil 1 colonne a change après chaque code barre scanner.

    Le but du son est de ne pas avoir besoin de regarder l'écran à chaque fois que je scanne un code barre.

    J'espère être clair, dans ma tête sa l'est mais par écrit ce n'est pas évident, je suit désolé.

    Merci pour votre aide.
    0
  3. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 784
     
    Bonjour,

    Ton fichier n'est d'aucune utilité et je ne comprends vraiment rien à tes explications !

    Peut-être qu'il s'agit de :
    Vérifier à l'aide d'un scanner optique si la référence qui vient d'être scannée existe dans une base de données située sur la feuilles 2 colonne A.
    Le résultat du scan s'inscrit dans la colonne A de la feuille 1 à la suite du scan précédent.

    Si c'est le cas il n'y a aucun intérêt à inscrire "finded" dans la base de données !

    C'est dans la colonne B de la feuille 1 qu'il faut l'inscrire, en face de la données qui vient d'être scannée pour savoir si elle existe ou non (en confirmant par un beep).

    Dans ce cas ce code à copier dans la feuille 1 devrait suffire (clic droit sur l'onglet, visualiser le code) :
    Private Sub Worksheet_Change(ByVal Target As Range)
      If Intersect(Target, Columns("A")) Is Nothing Then Exit Sub
      If Target.Count > 1 Then Exit Sub
      If Not Target.Value > "" Then Exit Sub
      Dim cel As Range
      Set cel = ThisWorkbook.Worksheets(2).Columns("A")
      Set cel = cel.Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole)
      If Not cel Is Nothing Then
        Target.Offset(, 1).Formula = "finded"
        Beep
      End If
    End Sub

    0
    1. dancesurfer
       
      Bonsoir Patrice33740.

      C'est bien cela que je désirait et c'est bien à cela que sert le fichier, :-( j'ai fait comme je pouvait avec mes faibles connaissances en EXCEL, merci beaucoup pour ton aide
      0
  4. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 784
     
    Les connaissances s'étofferont au fur et à mesure de l'utilisation, essaie de comprendre cette macro, car il est fort probable qu'ultérieurement tu doives la faire évoluer.

    Au plaisir de te relire sur le Forum
    0
    1. dancesurfer
       
      Encore un tout grand merci, en plus je me suit acheté un livre sur le VBA, je voit bien que c'est absolument nécessaire pour être performant. Et promis je vais essayer de comprendre la macro dès que j'aurai quelque notion.

      En tout cas vous êtes tous super pour dès gens comme moi, merci mille fois et à très bientôt sur les forums.
      0