Bonjour à tous,
Je débute le code sur VBA et je bute sur un problème.
j'ai créé un fichier dans le but de gérer les entrées en sortie de marchandises.
Dans le fichier ci joint j'ai deux macros affectés l'un aux départs de marchandises, et l'autres pour les retours.
Les champs des cellules A3 à E3 doivent être tous remplis pour exécuter la 1ère macro
Les champs des cellules F3 à J3 doivent être tous remplis pour exécuter la 2ème macro
Départ de marchandise: lorsque j'ajoute une référence, je regarde si la référence, le numéro de CF et le lieu ne sont pas déjà présents sur la matrice (par ligne), si c'est le cas l'action doit être d'ajouter le nb de palette + quantité, sinon l'action est d'ajouter sur la 1ère ligne vide les informations.
C'est exactement le même fonctionnement pour le retour de marchandise sauf qu'en plus, dès que la quantité est à 0, l'action est de supprimer la ligne et de venir copier la dernière ligne en remplacement.
Aujourd'hui ça ne fonctionne pas car je pense que la ligne qui ne fonctionne pas dans mon code est la vérification des différentes conditions ou ça vérifie les arguments sur les colonnes et non vérifie les arguments sur la même ligne et donc il arrive qu'il déduit des quantités sur la mauvaise ligne.
'ElseIf Not IsError(Application.Match(reference, ws_Afrac.Range("A4:A200"), 0)) And Not IsError(Application.Match(CF, ws_Afrac.Range("D4200"), 0)) And Not IsError(Application.Match(lieu, ws_Afrac.Range("E4:E200"), 0)) Then
j'ai cherché mais je n'ai pas réussi à fixer le problème.
je vous joins le fichier pour un plus de clarté.
Je remercie par avance les âmes charitables qui m'aideront.
bonne journée
Je débute le code sur VBA et je bute sur un problème.
j'ai créé un fichier dans le but de gérer les entrées en sortie de marchandises.
Dans le fichier ci joint j'ai deux macros affectés l'un aux départs de marchandises, et l'autres pour les retours.
Les champs des cellules A3 à E3 doivent être tous remplis pour exécuter la 1ère macro
Les champs des cellules F3 à J3 doivent être tous remplis pour exécuter la 2ème macro
Départ de marchandise: lorsque j'ajoute une référence, je regarde si la référence, le numéro de CF et le lieu ne sont pas déjà présents sur la matrice (par ligne), si c'est le cas l'action doit être d'ajouter le nb de palette + quantité, sinon l'action est d'ajouter sur la 1ère ligne vide les informations.
C'est exactement le même fonctionnement pour le retour de marchandise sauf qu'en plus, dès que la quantité est à 0, l'action est de supprimer la ligne et de venir copier la dernière ligne en remplacement.
Aujourd'hui ça ne fonctionne pas car je pense que la ligne qui ne fonctionne pas dans mon code est la vérification des différentes conditions ou ça vérifie les arguments sur les colonnes et non vérifie les arguments sur la même ligne et donc il arrive qu'il déduit des quantités sur la mauvaise ligne.
'ElseIf Not IsError(Application.Match(reference, ws_Afrac.Range("A4:A200"), 0)) And Not IsError(Application.Match(CF, ws_Afrac.Range("D4200"), 0)) And Not IsError(Application.Match(lieu, ws_Afrac.Range("E4:E200"), 0)) Then
j'ai cherché mais je n'ai pas réussi à fixer le problème.
je vous joins le fichier pour un plus de clarté.
Je remercie par avance les âmes charitables qui m'aideront.
bonne journée