Fichier inventaire permanant à amélioré (réad

Résolu/Fermé
maximus306 - 18 juil. 2012 à 15:07
 maximus306 - 23 juil. 2012 à 08:52
Bonjour,

Bonjour a tous les pro de excel et vba

J'aurais besoin de vos service pour améliorer un fichier excel et je suis un peu perdu dans le vba. Comme dit le titre, il faudrait amélioré les boites de dialogue.

Le context : c'est un fichier qui permet de connaître en temps réel le nombre de chutes aluminium qu'il y a en stock. Grace a des boites de dialogue il peut rentré ou sortie des chutes du fichier grace a une douchette (le truc de caissière pour scanner les codes barre) ou rentré manuellement les informations.

Le problème : Il se passe un niveau de scanner le code barre. En ce moment quand il scanne le code, les informations rentrent de la maniére suivante (ACCD;3004S;2000) donc le nom du profils, sa couleur, et la longueur
et aprés il doit valider pour rentrer ou sortir la chutes.

A réaliser : Je ne sais pas si c'est possible, mais je vous dis ce qui serais sympa à faire. Il faudrais annuler la validation afin que qd il scan le code barre, la chute rentre automatiquement.

je vous passe le fichier pour que vous compreniez mieux.
http://cjoint.com/?3GsoP42KFPs
En espérant que le line marche
je continue mes recherches de mon coté bon courage a tous

Maxime

A voir également:

12 réponses

pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
18 juil. 2012 à 15:20
Bonjour,

1- Bonjour a tous les pro de excel et vba
Aucun pro ne t'aidera gratuitement, donc considère qu'ici tu es aidé par des bénévoles amateurs...

2- Pour faire ce que tu veux, il faut que le code qui se déclenche au bouton valider, se déclenche quand le contenu du textbox change.
Le principe, couper le contenu du code du bouton, le coller dans l'événement TextBox_Change, et ajouter quelques lignes à la fin pour vider le textbox et lui donner le focus.

Par contre, c'est difficile pour moi de tester, donc je te l'ai fait dans le fichier ci-joint, uniquement pour les entrées.
Dis moi si cela fonctionne.
0
bonjour pijaku,
pour les pro je voulais dir tt ceux qui connaissent bien excel et le vba je visai pas forcement les professionnels

cependant j'ai bien pensé a ta solution, mais je ne savais pas comment trop m'y prendre.
J'ai essayer ton fichier avec les modifications mais des que je rentre les info il y a une erreur. Et a ce niveau la de vba je comprends plus grand chose.
je pence qu'il faudrai demandé de retiré les informations des deux premiers point virgule quand les prochains arrive et dir ce qui a retiré comme info de l'éffacer
tu en pence quoi?
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
18 juil. 2012 à 15:38
il y a une erreur
Laquelle? Quel est le code erreur? Qu'elle ligne est surlignée lorsque tu clic sur Débogage?

je pence qu'il faudrai demandé de retiré les informations des deux premiers point virgule quand les prochains arrive et dir ce qui a retiré comme info de l'éffacer
Alors là... pas tout compris...
0
donc l'erreur c'est : erreur de compilation, projet ou bibliotèque introuvable.
il souligne en jaune private sub Private Sub TexCB_Change() et a la ligne 18 "Chr" dans la ligne MsgBox "ATTENTION: " & Chr(13) & _

sinn oublie ce que j'ai dit avant avec les point virgules et tous, j'ai peus être une autre idée
est-il possible de dir a la texbox de rentré les informations dans le fichier quand la text box se retrouve avec deux point virgule. car il faut savoir que quand je scan le modele reste toujour le même donc nom du profils ; la couleur ; la longueur et c'est grace au point virgule que l'on peu dissosié le nom, la couleur et la longueur pour quel rentre chacune dans les colones qui leur convienne
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
18 juil. 2012 à 16:01
Essaye ce fichier
L'événement choisit est TextBox_Exit.
Ne sachant pas comment réagit l'événement Change avec une douchette...

Tu scannes un produit et appuies sur Tab pour quitter le textbox.

erreur sur Chr(13)... incompréhensible.
Quant à :
sinn oublie ce que j'ai dit avant avec les point virgules et tous, j'ai peus être une autre idée
est-il possible de dir a la texbox de rentré les informations dans le fichier quand la text box se retrouve avec deux point virgule. car il faut savoir que quand je scan le modele reste toujour le même donc nom du profils ; la couleur ; la longueur et c'est grace au point virgule que l'on peu dissosié le nom, la couleur et la longueur pour quel rentre chacune dans les colones qui leur convienne

C'est ce que fait le code...
0
re,
j'ai une erreur en cliquant sur le boutton donc l'erreur c'est : erreur de compilation // la décalration de la procédure ne correspond pas a la description de l'évènement ou de la procédure du même nom.

sinon tu a raison, quand je scanne le code barre, cela me donne ce que je t'es dit audessus
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
18 juil. 2012 à 16:43
as tu essayé le fichier transmis ici tel quel???
parce que : j'ai une erreur en cliquant sur le boutton il n'y a plus de bouton!!!
0
oui je clique sur le bontton entré chute et juste apres il y a une erreur que je t indiqué
0

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

Posez votre question
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
18 juil. 2012 à 17:03
Alors la!!!!!!
Je ne comprends pas pourquoi la procédure Exit refuse de fonctionner...

Tant pis pour elle, on utilisera AfterUpdate qui n'est pas trop loin...
Regarde ce nouveau fichier et dis moi...
0
bonjour, désoler d'avoir mis du temp a répondre, mais ce si ne marche pas non plus une arreur s'affiche "erreur d'execution 1004 la méthode sheets de l'objet '-global a échoué
et c'est toujour en cliquant sur le boutton entré chute.
Si nous trouvons pas la solution, es t'il possible de mettre 5 ou 10 texbox et a chaque fois que l'on scanne un code barre cela change de texbox puis faire valider je pence que cela serais plus simple
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
19 juil. 2012 à 13:31
Bonjour,
Bon le but du jeu de ce jour est de permettre à l'utilisateur de scanner 10, 20, 32000 codes et de valider après en une seule fois. C'est ça?

Bon. Je t'ai bricolé un code, à partir de ton fichier initial (celui qui fonctionnait bien...) avec une variable tableau. Celle ci va enregistrer jusqu'à 32000 saisies.....
Ne l'utilises pas sur plus de 10-15 codes car après, le traitement des erreurs est différent... Par message, normalement, tu devrait obtenir le numéro du code scanné faux, dans l'ordre de scan des codes.
Voici le fichier

En clair :
- tu prépares 10 codes à scanner,
- tu scannes le premier, le code apparait 1 seconde à l'écran puis disparait : il est enregistré dans la variable tableau
- tu scannes le 2ème
etc etc...
Quand tu as fini de scanner tes articles, tu clic sur le bouton valider.
Les erreurs apparaitront sous forme de message mais ne s'enregistrent pas! Les codes sans erreur seront enregistrés dans ton fichier.

Je n'ai fait que la BoiteEntrée. Si ça te va je ferais les autres (l'autre...)
0
Oui voila le but est bien de scanner plusieurs chutes afin de rentrer ou de sortirs plusieurs chutes en même temps.
Par contre quand nous sortons les chutes, on en sort environ 50 à 80, ce qui est deja pas mal et quand on rentre les chutes je dirai que c'est pas plus de 10 chutes
Par contre, j'ai un sousi quand j'enregistre le fichier pour l'ouvrir bien sur excel.
quand je veu l'ouvrir avec excel et non le excel de internet, il me dit erreur de chargement DLL c'est quoi?
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
Modifié par pijaku le 19/07/2012 à 15:06
Aïe!
On ne va décidémment pas y arriver.
Je reviens dans 5 minutes.........
Tout cela doit venir de la fonction Sleep.
Je change de slip et reviens donc...
0
oksa marche merci encore de te cassé la tête pour moi, car moi j'ai le cervaux en miette depuis quelque jour ^^
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
19 juil. 2012 à 15:11
T'inquiète...
Voilà le truc...
Dis moi si ça va mieux sans slip ;-)
0
Du coup, il y a un gros sousi, g des erreurs partout sauf pour le trie chute, donc qd je rentre une chute le code on le voit 1 seconde et il part m quand je clik sur valider une erreur (encore) erreur de compilation : projet ou bibliotheque introuvable. qu'es qui ce passe?
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
19 juil. 2012 à 15:31
pour l'instant je n'ai fait que le bouton "Entrée Chute".

Quand tu as l'erreur, clic sur débogage et dis moi qu'elle ligne bloque, car chez moi tout fonctionne...

Retente également ton fichier initial voir s'il fonctionne toujours...
0
mon fichier original marche niquel aucun sousis
donc pour l'autre fichier l'erreur se situe dans Private Sub ComOkCB_Click()
et c'est a la ligne 21 "MsgBox "ATTENTION: " & Chr(13) &"
enfete je travail sous excel 2000 peut etre qu'il y a une erreur de compabilité?
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
19 juil. 2012 à 15:56
C'est étonnant non?
Je n'ai pas du tout touché à cette partie, elle fonctionne sur un de tes fichiers, mais pas sur l'autre???????????????????????????????????????????????????????????

Bon essaie en remplaçant les Chr(13) par l'une ou l'autre des constantes suivantes :
1- Chr(10) ==> marchera certainement pas mieux...
2- vbCr ==> pas tout à fait le même effet,
3- VbCrLf ==> déjà mieux!

Si cela ne fonctionne pas, tant pis pour tes passages à la ligne, on essaie ceci :
à la place de :
If Ch(0) = "" Or Ch(1) = "" Then
            MsgBox "ATTENTION: " & Chr(13) & _
               "Nom de Profil " & Chr(13) & _
               Chr(9) & Chr(9) & "ou/et" & Chr(13) & _
               "Couleur INEXISTANT(S)!!!!!!" & Chr(13) & _
               "Passez en encodage manuel pour le code n° " & i + 1
            GoTo Suivant
            'TexCB = ""
            'Exit Sub
            'TexCB.SetFocus
        End If


Mets :
If Ch(0) = "" Or Ch(1) = "" Then
            MsgBox "ATTENTION: Nom de Profil ou/et Couleur INEXISTANT(S) Passez en encodage manuel pour le code n° " & i + 1
            GoTo Suivant
            'TexCB = ""
            'Exit Sub
            'TexCB.SetFocus
        End If
0
je suis encore dsl de te decevoir, mais cela ne fonctionne pas pour "ch10"
Vbrc erreur de suite sans rien faire et pareille pour les autre m cela renvoi a mon code de code barre qui se situe dans le module 2 Public "Function code128$(chaine$)" a la ligne 16 "Select Case Asc(Mid$(chaine$, i%, 1))"
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
19 juil. 2012 à 16:17
Je te le répète donc, cela semble fonctionner chez moi. Remarque que je n'ai pas de douchette...
Nulle part dans le code, j'ai pourtant fait toutes les pages, il n'est fait appel à la fonction code128...
Est ce automatique avec la douchette?
0
ce qui es bizard le code128 est pour la partie manuelle pour rentré une chute cela me permet de genere une étiquette avec un code barre, et cela reproduit le code de la machine que nous utilison
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
19 juil. 2012 à 16:42
Il nous manque certainement des choses, genre des macros .xla placées ailleurs. Cela fait partie d'un pack que tu as acheté? Si oui, tu sais je ne pourrais pas faire grand chose pour toi.....
ce qui es bizard le code128 est pour la partie manuelle pour rentré une chute cela me permet de genere une étiquette avec un code barre, et cela reproduit le code de la machine que nous utilisons
Nulle part, dans le code du fichier que tu as fournit, il n'est fait appel à code128...
J'en conclus que son appel est extérieur au fichier, mais je ne vois pas du tout comment.....
Malheureusement, sans nouvelle donnée, je ne peux pas t'aider davantage....
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
19 juil. 2012 à 16:48
Pour essayer tout de même...
La fonction plante sur :
For i% = 1 To Len(chaine$)
      Select Case Asc(Mid$(chaine$, i%, 1))
      Case 32 To 126, 203
      Case Else
        i% = 0
        Exit For
      End Select
    Next

ajoute un MsgBox avant la ligne qui plante :
For i% = 1 To Len(chaine$)
MsgBox chaine$
      Select Case Asc(Mid$(chaine$, i%, 1))
      Case 32 To 126, 203
      Case Else
        i% = 0
        Exit For
      End Select
    Next

et dis moi, quand ça se déclenche?, qu'elle action lance cette fonction? pourquoi? quand? comment? et qui a t'il dans le message?
0
Bonjour franck,

apres ce week end, j'ai trouvé une solution avec un timer qui est beaucoup plus simple. Du coup il falais demandé que tout les 2seconde ou moin de valider la chute qui venai d'être rentré.
temps que la texbox est vide le comte a reboure ne demarre pas mais des qu'il est plien, le conte a rebour se declenche et active la validation
je tien quand même a te remercier de tes recherches bonne journé et a bientôt pour de nouveau problème ^^
max
0