Ajout d'un bouton pour récupérer données d'un fichier externe
Kivanc
Messages postés
390
Date d'inscription
Statut
Membre
Dernière intervention
-
Kivanc Messages postés 390 Date d'inscription Statut Membre Dernière intervention -
Kivanc Messages postés 390 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je fais appel à votre amabilité et connaissance éventuelle en VBA pour m'aider à ajouter un bouton à ma macro.
A la base j'ai 3 fichiers :
Je souhaiterai ajouter un bouton dans ma macro du même type que le deuxième « indiquer le fichier stocks » `qui alimente la colonne Ventes de mon fichier cadencier à partir de Qté Unités colonne L du fichier »SUM( [FLDC-Qté unites] ) »). Cette fois-ci je veux aller chercher un fichier Commandes prendre la colonne U « Arr. Intégrées » du fichier «fichier_alim_CMD »(dossier test macro) et la coller dans le fichier nommé Cadencier à la colonne CMD.
J'ai tout d'abord dans excel recopié la partie pour aller chercher le fichier créer le bouton et je l'ai affecté à une nouvelle macro « Sub CommandButton3_Click() »
Ensuite dans le code j'ai cherché à peu près tout le code ou y avait stock dedans et je l'ai recopié pour « commandes » en changeant le nom de toutes les variables...
PS: quand on appuie sur le bouton mettre a jour le cadencier ça marche ça alimente la colonne ventes. Mais mon bouton CMD ne marche pas... par contre avant d'appuyer sur mettre a jour faut qu'il y ait que la macro d'ouverte sur le pc.
Le dossier ci-joint contient donc : le cadencier, la macro de base, la macro test (contenant le code que j'ai ajouté qui se trouve entre des commentaires `TEST Bouton & `end test bouton pour pouvoir se repérer facilement ; le fichier pour alimenter les stocks avec le 2ème bouton et celui pour alimenter les commandes (nouveau bouton).
... je n'ai fait que reprendre la méthode de création du bouton 2. Je pense avoir fait le plus gros mais n'ayant que des connaissances très basiques de VBA, je suis incapable de rectifier.
Voici tous les fichiers :
https://www.cjoint.com/c/EDwleLoGB1Z
Merci par avance et bonne journée.
Je fais appel à votre amabilité et connaissance éventuelle en VBA pour m'aider à ajouter un bouton à ma macro.
A la base j'ai 3 fichiers :
- Un premier nommé « cadencier » contenant tous mes articles reconnu par un code IFLS colonne J
- Une macro « Macro alim cadencier » qui permet de récupérer des fichiers sur mon disque dur et d'alimenter la colonne Ventes du cadencier aves les boutons
- Le fichier contenant les données qui vont être intégré dans le cadencier grâce à la macro : « fichier_pour_alim_ventes »
Je souhaiterai ajouter un bouton dans ma macro du même type que le deuxième « indiquer le fichier stocks » `qui alimente la colonne Ventes de mon fichier cadencier à partir de Qté Unités colonne L du fichier »SUM( [FLDC-Qté unites] ) »). Cette fois-ci je veux aller chercher un fichier Commandes prendre la colonne U « Arr. Intégrées » du fichier «fichier_alim_CMD »(dossier test macro) et la coller dans le fichier nommé Cadencier à la colonne CMD.
J'ai tout d'abord dans excel recopié la partie pour aller chercher le fichier créer le bouton et je l'ai affecté à une nouvelle macro « Sub CommandButton3_Click() »
Ensuite dans le code j'ai cherché à peu près tout le code ou y avait stock dedans et je l'ai recopié pour « commandes » en changeant le nom de toutes les variables...
PS: quand on appuie sur le bouton mettre a jour le cadencier ça marche ça alimente la colonne ventes. Mais mon bouton CMD ne marche pas... par contre avant d'appuyer sur mettre a jour faut qu'il y ait que la macro d'ouverte sur le pc.
Le dossier ci-joint contient donc : le cadencier, la macro de base, la macro test (contenant le code que j'ai ajouté qui se trouve entre des commentaires `TEST Bouton & `end test bouton pour pouvoir se repérer facilement ; le fichier pour alimenter les stocks avec le 2ème bouton et celui pour alimenter les commandes (nouveau bouton).
... je n'ai fait que reprendre la méthode de création du bouton 2. Je pense avoir fait le plus gros mais n'ayant que des connaissances très basiques de VBA, je suis incapable de rectifier.
Voici tous les fichiers :
https://www.cjoint.com/c/EDwleLoGB1Z
Merci par avance et bonne journée.
A voir également:
- Ajout d'un bouton pour récupérer données d'un fichier externe
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier bin - Guide
- Comment recuperer un message supprimé sur whatsapp - Guide
- Fichier rar - Guide
305 réponses
Ca me semble bon... je prie !!
Par contre aviez-vous vu pour l'histoire d'étendre l'alerte jusque J+6 ?
Actuellement lorsqu'on met à jour les stocks, calcule la prev il y'a aussi l'alerte qui est calculée à J+3.
Par contre aviez-vous vu pour l'histoire d'étendre l'alerte jusque J+6 ?
Actuellement lorsqu'on met à jour les stocks, calcule la prev il y'a aussi l'alerte qui est calculée à J+3.
Re,
Formule dans A actuellement : =SI((IS15*100/IP15>300);2;SI((IS15*100/IP15<80);1;0))
Chaque jour mis à jour grâce au 1er bouton, ajoute cette formule à J+3 automatiquement. Ou est-ce dans le code ??
Car afin d'ignorer le 0 dans le cas d'un jour férié (prev=0)je souhaitais modifier cette formule par : =SI(IP15=0;"";SI((IS15*100/IP15>300);2;SI((IS15*100/IP15<80);1;0))
Donc je ne sais pas comment modifier.. et ou ?
Formule dans A actuellement : =SI((IS15*100/IP15>300);2;SI((IS15*100/IP15<80);1;0))
Chaque jour mis à jour grâce au 1er bouton, ajoute cette formule à J+3 automatiquement. Ou est-ce dans le code ??
Car afin d'ignorer le 0 dans le cas d'un jour férié (prev=0)je souhaitais modifier cette formule par : =SI(IP15=0;"";SI((IS15*100/IP15>300);2;SI((IS15*100/IP15<80);1;0))
Donc je ne sais pas comment modifier.. et ou ?
Re,
étendre l'alerte jusque J+6 Pas fait, j'attendais de voir si Ok
Donc je ne sais pas comment modifier.. et ou ?
Formule_Partie_1 et Formule_Partie_2 dans module
Mod_MAJ
Function Alerte_Stock
étendre l'alerte jusque J+6 Pas fait, j'attendais de voir si Ok
Donc je ne sais pas comment modifier.. et ou ?
Formule_Partie_1 et Formule_Partie_2 dans module
Mod_MAJ
Function Alerte_Stock
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
fichier modifie pour J2 a J6 et formule SI PREV=0 .....:
https://www.cjoint.com/c/EEclrIali5Y
A+
fichier modifie pour J2 a J6 et formule SI PREV=0 .....:
https://www.cjoint.com/c/EEclrIali5Y
A+
Bonjour,
Merci pour cette version.
Est-ce ceci :
Merci pour cette version.
Est-ce ceci :
If (I_Prev >= 2 And I_Prev <= 6) Thenqui a permis d'étendre l'lerte à J+6 ?
Re,
En alimentant mon samedi 2 mai pour stocks et entrées, je me rends compte de plusieurs problèmes.
Après alimentation des entrées, lorsque pour un article je n'ai pas eu de commande la macro retourne une valeur vide pour CMD. Or apparemment, dès lors que CMD est vide, la formule du STOCK ne se fait plus et retourne une erreur ###. Y'a-t-il quelque chose dans la macro à modifier pour ignorer les valeurs vides ou seulement dans la formule ? De plus, nous n'avions pas ce pb avant ?
Autre chose dans certaines cellules A il semblerait que la formule n'ignore pas si PREV=0 ? car il y'a quelques #DIV/0 pour le 2 mai.
merci
En alimentant mon samedi 2 mai pour stocks et entrées, je me rends compte de plusieurs problèmes.
Après alimentation des entrées, lorsque pour un article je n'ai pas eu de commande la macro retourne une valeur vide pour CMD. Or apparemment, dès lors que CMD est vide, la formule du STOCK ne se fait plus et retourne une erreur ###. Y'a-t-il quelque chose dans la macro à modifier pour ignorer les valeurs vides ou seulement dans la formule ? De plus, nous n'avions pas ce pb avant ?
Autre chose dans certaines cellules A il semblerait que la formule n'ignore pas si PREV=0 ? car il y'a quelques #DIV/0 pour le 2 mai.
merci
Bonjour,
en JK90-95: #Valeur: y' a un caractere non imprimable dans les cellules
JG90 JG95 !!
De plus comment ce fait-il qu'il y ait des formules dans la colonne CMD alors que la mise a jour va les ecraser ??????
il semblerait que la formule n'ignore pas si PREV=0 ? car il y'a quelques #DIV/0 pour le 2 mai.
La formule marche si elle est ecrite dans la cellule exemple du 5 et 6 mai: la nouvelle formule n'est pas ecrite en JR125-130 et JX idem vu que les deux IFLS figurent dans le fichier 110428 et 110429 sans commandes (0 et vide)
Chez moi le fichier 110429 provoque des erreurs 400!!!!!!!!!!!!!!!!!!!!!!!!
en JK90-95: #Valeur: y' a un caractere non imprimable dans les cellules
JG90 JG95 !!
De plus comment ce fait-il qu'il y ait des formules dans la colonne CMD alors que la mise a jour va les ecraser ??????
il semblerait que la formule n'ignore pas si PREV=0 ? car il y'a quelques #DIV/0 pour le 2 mai.
La formule marche si elle est ecrite dans la cellule exemple du 5 et 6 mai: la nouvelle formule n'est pas ecrite en JR125-130 et JX idem vu que les deux IFLS figurent dans le fichier 110428 et 110429 sans commandes (0 et vide)
Chez moi le fichier 110429 provoque des erreurs 400!!!!!!!!!!!!!!!!!!!!!!!!
Il faut donc que pour le 2 mai je modifie toutes les formules à la main ? pour ignorer les prev à 0 du 1er mai ?
Je n'ai pas de caractère en JG90 JG95 ?
Les formules CMD étaient à la base faites car les utilisateurs enraient les commandes à la ligne fournisseurs et faisaient automatiquement la somme cellule CMD. N'en tenez pas compte..
le fichier 1150429 a-t-il le rapport à la fin ? moi je n'ai pas d'erreur
Je n'ai pas de caractère en JG90 JG95 ?
Les formules CMD étaient à la base faites car les utilisateurs enraient les commandes à la ligne fournisseurs et faisaient automatiquement la somme cellule CMD. N'en tenez pas compte..
le fichier 1150429 a-t-il le rapport à la fin ? moi je n'ai pas d'erreur
De plus, actuellement la prévision est arrondie.
Je voudrai que pour une valeur inférieure à 1, l'arrondir à 0 donc faire un arrondi inférieur pour les valeurs inférieures à 1. Est-ce possible et sur cette formule qu'il faut modifier ?
merci
Prevision = Round(Calcul_Prevision(MFMP, MFC, Ligne_Ref, Col_Prev + (IPNCJ), Jour_Ferie, Nombre_Colonne_Jour, Somme_Ref), 0) '[V6]
Je voudrai que pour une valeur inférieure à 1, l'arrondir à 0 donc faire un arrondi inférieur pour les valeurs inférieures à 1. Est-ce possible et sur cette formule qu'il faut modifier ?
merci
Re,
Je n'ai pas de caractère en JG90 JG95 ? A quoi le voyez-vous ???
le fichier 1150429 a-t-il le rapport à la fin ? moi je n'ai pas d'erreur surprenant si vous n'avez pas fait de modif dans le code a cette ligne dans module previsions:
Car dans 110428: code entrepot
et 110429: Code entrepot
donc pas ecrit pareil et comme pas de traitement colonne pas trouvee, Col_DEPOT_Stk =0 donc erreur
Je n'ai pas de caractère en JG90 JG95 ? A quoi le voyez-vous ???
le fichier 1150429 a-t-il le rapport à la fin ? moi je n'ai pas d'erreur surprenant si vous n'avez pas fait de modif dans le code a cette ligne dans module previsions:
If MFS.Cells(Ligne1Stock, Colonne) = "code entrepot" Then Col_DEPOT_Stk = Colonne
Car dans 110428: code entrepot
et 110429: Code entrepot
donc pas ecrit pareil et comme pas de traitement colonne pas trouvee, Col_DEPOT_Stk =0 donc erreur
Re,
J'ai bien : If MFS.Cells(Ligne1Stock, Colonne) = "code entrepot" Then Col_DEPOT_Stk = Colonne
Je ne comprends pas votre erreur.
Le fichier 1150428 contient les stocks et sorties et le fichier 1150429 contient les entrées...ne concernent pas la même colonne donc pourquoi est-ce qu'il y aurait une erreur ?
J'ai bien : If MFS.Cells(Ligne1Stock, Colonne) = "code entrepot" Then Col_DEPOT_Stk = Colonne
Je ne comprends pas votre erreur.
Le fichier 1150428 contient les stocks et sorties et le fichier 1150429 contient les entrées...ne concernent pas la même colonne donc pourquoi est-ce qu'il y aurait une erreur ?
Re,
Le fichier 1150428 contient les stocks et sorties et le fichier 1150429 c'est ce que j'ai vu, donc 1150429 a ne pas mettre en Fichier stock/sorties
Pour JG90 j'ai un 0? Dans le fichier cadencier christhophe que j'ai JG90 et JG95 y a pas de zero
voici le fichier d'origine: https://www.cjoint.com/c/EEeq1Ja2sfr
JG90 j'ai fait une suppression par backspace et pas fait sur JG95
Le fichier 1150428 contient les stocks et sorties et le fichier 1150429 c'est ce que j'ai vu, donc 1150429 a ne pas mettre en Fichier stock/sorties
Pour JG90 j'ai un 0? Dans le fichier cadencier christhophe que j'ai JG90 et JG95 y a pas de zero
voici le fichier d'origine: https://www.cjoint.com/c/EEeq1Ja2sfr
JG90 j'ai fait une suppression par backspace et pas fait sur JG95
Re,
Mais non, puisque je ne prenais pas le bon fichier stock
Par contre pour le fichier cadencierchristophe, soit je n'ai pas le meme que vous (mise a jour ,......) ou pas les memes fichier stocks et entree
actuellement la prévision est arrondie. Oui, et pourquoi arrondi inf que pour inf a 1, autant prendre que la partie entiere pour tous
Mais non, puisque je ne prenais pas le bon fichier stock
Par contre pour le fichier cadencierchristophe, soit je n'ai pas le meme que vous (mise a jour ,......) ou pas les memes fichier stocks et entree
actuellement la prévision est arrondie. Oui, et pourquoi arrondi inf que pour inf a 1, autant prendre que la partie entiere pour tous
Voici le cadencier : https://www.cjoint.com/c/EEeroxL5WoO
actuellement si l'on a une prev de 0,4 ça arrondit à 1, il faudrait que ça arrondisse à 0
actuellement si l'on a une prev de 0,4 ça arrondit à 1, il faudrait que ça arrondisse à 0
Re,
Va beaucoup mieux avec ce cadencier.
arroundi:
remplacez cette ligne:
par:
Va beaucoup mieux avec ce cadencier.
arroundi:
remplacez cette ligne:
Prevision = Round(Calcul_Prevision(MFMP, MFC, Ligne_Ref, Col_Prev + (IPNCJ), Jour_Ferie, Nombre_Colonne_Jour, Somme_Ref), 0) '[V6]
par:
Prevision = Calcul_Prevision(MFMP, MFC, Ligne_Ref, Col_Prev + (IPNCJ), Jour_Ferie, Nombre_Colonne_Jour, Somme_Ref) '[V6] If Prevision < 1 Then Prevision = 0 Else Prevision = Round(Prevision, 0) '[V6] End If
Je ne vois pas le code en entier . seulement jusque : Prevision = Calcul_Prevision(MFMP, MFC, Ligne_Ref, Col_Prev + (IPNCJ), Jour