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
Bonjour,
x dans colonnes
ligne ci-dessus a remettre en commentaire
et pour cmd:
'Ecris le commentaire "Maj OK" dans le fichier CMD
MFMD.Cells(LigCommande, Col_Comments) = "Maj OK"
'supprimme le "X" sur la feuille Cadencier, dans la colonne "Analyse"
'MFC.Cells(Ligne, Col_Analyse_Cad).ClearContents
ligne ci-dessus a remettre en commentaire
J'ai encore beaucoup de #DIV/0 dans les cellules A à cause de PREV= 0. ! Chez moi cadencier ligne 50,125,150 cellules JQ 2 et JX 3 formule ancienne donc pas eut de mise a jour, mais peut-etre normal
x dans colonnes
'Fin mise à jour des prévisions 'Ecris le commentaire "Maj OK" dans le fichier Stock MFS.Cells(LigStock, Col_CommentR_Stk) = "Maj OK" 'supprimme le "X" sur la feuille Cadencier, dans la colonne "Analyse" 'MFC.Cells(Ligne, Col_Analyse_Cad).ClearContents
ligne ci-dessus a remettre en commentaire
et pour cmd:
'Ecris le commentaire "Maj OK" dans le fichier CMD
MFMD.Cells(LigCommande, Col_Comments) = "Maj OK"
'supprimme le "X" sur la feuille Cadencier, dans la colonne "Analyse"
'MFC.Cells(Ligne, Col_Analyse_Cad).ClearContents
ligne ci-dessus a remettre en commentaire
J'ai encore beaucoup de #DIV/0 dans les cellules A à cause de PREV= 0. ! Chez moi cadencier ligne 50,125,150 cellules JQ 2 et JX 3 formule ancienne donc pas eut de mise a jour, mais peut-etre normal
Voici mes fichiers : https://www.cjoint.com/c/EEfpy3uksoT
Dans le cadencier on a une multitude d'érreurs sur le 5 mai. J'ai alimenté le 4 mai il semblerait donc que chaque jour il y'a des erreurs sur le lendemain.
Dans le cadencier on a une multitude d'érreurs sur le 5 mai. J'ai alimenté le 4 mai il semblerait donc que chaque jour il y'a des erreurs sur le lendemain.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Re,
J'ai les div0 que je vous ai signale et une palanquée de #valeur (que j'avais aussi) dues a la colonne JM qui a des cellules non vide, ce que je vous ai deja explique, voir ce fichier: https://www.cjoint.com/c/EEfpXloJW9C
J'ai les div0 que je vous ai signale et une palanquée de #valeur (que j'avais aussi) dues a la colonne JM qui a des cellules non vide, ce que je vous ai deja explique, voir ce fichier: https://www.cjoint.com/c/EEfpXloJW9C
Donc cela apparait à chaque fois qu'il n'y a pas de valeur dans CMD ?? c'est très embêtant... peut on ignorer le vide ?
Je n'avais pas compris que vous aviez ça.
Les div 0 apparaissent à chaque fois qu'une prev est à 0. On avait pas réglé ça ?
Je n'avais pas compris que vous aviez ça.
Les div 0 apparaissent à chaque fois qu'une prev est à 0. On avait pas réglé ça ?
Re,
Ai trouve le schmilblik: vient de la colonne Arr.Integrees du fichier d'entrees, aucune cellule n'est vide. Il y a soit un nombre soit un caractere non visible du au logiciel d'extraction si cela en est une.
Ai trouve le schmilblik: vient de la colonne Arr.Integrees du fichier d'entrees, aucune cellule n'est vide. Il y a soit un nombre soit un caractere non visible du au logiciel d'extraction si cela en est une.
Je ne comprends pas ? aucune cellule vide ? comment voyez vous qu'il ya un caractère s"il est non visible ?
Ces fichiers sont des résultats de requêtes showcase
Ces fichiers sont des résultats de requêtes showcase
Re,
comment voyez vous qu'il ya un caractère s"il est non visible ?
avez-vous regarde ceci: f894009 5 mai 2015 à 15:35
et mainrenant ceci: https://www.cjoint.com/c/EEfqmoqeoRo
et enfin la solution:
dans procedure
remplacez le ligne:
par:
comment voyez vous qu'il ya un caractère s"il est non visible ?
avez-vous regarde ceci: f894009 5 mai 2015 à 15:35
et mainrenant ceci: https://www.cjoint.com/c/EEfqmoqeoRo
et enfin la solution:
dans procedure
Sub MaJ_Cadencier_Commande(MFM As Worksheet)
remplacez le ligne:
MFC.Cells(Ligne, ColonneCad) = MFMD.Cells(LigCommande, Col_Commande)
par:
If IsNumeric(MFMD.Cells(LigCommande, Col_Commande)) Then MFC.Cells(Ligne, ColonneCad) = MFMD.Cells(LigCommande, Col_Commande) Else MFC.Cells(Ligne, ColonneCad) = Empty End If
Bonjour,
Oui j'ai ien vu mais je ne comprends pas... qu'est-ce que ce caractère non visible ??
J'ai remplacé la ligne : https://www.cjoint.com/c/EEfsJr4P51E
Il semblerait qu'il manque un If ??
Que fait cette condition ?
Oui j'ai ien vu mais je ne comprends pas... qu'est-ce que ce caractère non visible ??
J'ai remplacé la ligne : https://www.cjoint.com/c/EEfsJr4P51E
Il semblerait qu'il manque un If ??
Que fait cette condition ?
Re,
Chez moi, li ne reste que les div0
Votre fichier est ok, j'ai juste empile autrement: https://www.cjoint.com/c/EEftxQHu7hZ
pour eliminer les #valeurs: mettre a jour entrees et stock/sorties
fichier cadencier: https://www.cjoint.com/c/EEftCOhZ4XF
Chez moi, li ne reste que les div0
Votre fichier est ok, j'ai juste empile autrement: https://www.cjoint.com/c/EEftxQHu7hZ
pour eliminer les #valeurs: mettre a jour entrees et stock/sorties
fichier cadencier: https://www.cjoint.com/c/EEftCOhZ4XF
Merci.
Div0 dû au 0 en PREV. Ce que je ne comprend pas c'est pourquoi est-ce que ça n'est que sur quelque colonne A ?
et vous aviez bien ignoré le 0 dans la formule pourtant ?
Div0 dû au 0 en PREV. Ce que je ne comprend pas c'est pourquoi est-ce que ça n'est que sur quelque colonne A ?
et vous aviez bien ignoré le 0 dans la formule pourtant ?
Bonjour,
Pouvez-vous svp me rappeler ce que vous avez modifié pour que la macro puisse gérer plusieurs entrepôts ? J'ai une macro basique similaire à la toute première macro mais qui ne met pas à jour les stocks. J'ai donc fait quelques MAJ (arrondi de la prev, alerte jusque J+6 , et ignorer la prev à 0 pour l'alerte).
Le plus serait de prendre la macro actuelle et de n'enlever que les lignes mises à jour de stocks mais elle comporte encore quelques bugs ...
Je voudrai ajouter les fonctionnalités à celle-ci comme l'histoire des entrepôts et comme vous n'avez pas mis de commentaire sur ce que vous avez ajouté j'ai du mal à m'y retrouver..
Voici la macro : https://www.cjoint.com/c/EEgjGZezw9A
merci
Pouvez-vous svp me rappeler ce que vous avez modifié pour que la macro puisse gérer plusieurs entrepôts ? J'ai une macro basique similaire à la toute première macro mais qui ne met pas à jour les stocks. J'ai donc fait quelques MAJ (arrondi de la prev, alerte jusque J+6 , et ignorer la prev à 0 pour l'alerte).
Le plus serait de prendre la macro actuelle et de n'enlever que les lignes mises à jour de stocks mais elle comporte encore quelques bugs ...
Je voudrai ajouter les fonctionnalités à celle-ci comme l'histoire des entrepôts et comme vous n'avez pas mis de commentaire sur ce que vous avez ajouté j'ai du mal à m'y retrouver..
Voici la macro : https://www.cjoint.com/c/EEgjGZezw9A
merci
Bonjour,
Kivanc 5 mai 2015 à 23:40 A vous de regarder si cette cellule est a mettre a jour, en fonction de vos fichers stock et entrees/sorties, ou pas !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
comme vous n'avez pas mis de commentaire sur ce que vous avez ajouté j'ai du mal à m'y retrouver.. Etes-vous capable de lire le code ?????????
fichier macro_ab_lens_0405 dans la procedure:
Kivanc 5 mai 2015 à 23:40 A vous de regarder si cette cellule est a mettre a jour, en fonction de vos fichers stock et entrees/sorties, ou pas !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
comme vous n'avez pas mis de commentaire sur ce que vous avez ajouté j'ai du mal à m'y retrouver.. Etes-vous capable de lire le code ?????????
fichier macro_ab_lens_0405 dans la procedure:
Sub MaJ_Cadencier_Prevision(MFM As Worksheet)Il y a des commentaires qui ne sont pas de moi, je ne mets pas d'accent, pour ce sujet. Si vous avez le fichier d'origine, vous verrez quelle modif j'ai faite (DEPOT=)
Bonjour,
Je parlais des div0, j'en ai 2 en lignes 125 et 130 pour le 5 mai. Car la prev est à 0 au 4 mai. Avez-vous la même chose ?
Cette partie permettait pourtant d'ignorer le 0 ? non ?
merci
Je parlais des div0, j'en ai 2 en lignes 125 et 130 pour le 5 mai. Car la prev est à 0 au 4 mai. Avez-vous la même chose ?
RStock = Split(Columns(Colonne_Ref).Address(ColumnAbsolute:=False), ":")(1) & Ligne_Ref
RPrevprec = Split(Columns(Colonne_Ref - 3).Address(ColumnAbsolute:=False), ":")(1) & Ligne_Ref
Formule_Partie_1 = "=if(" & RPrevprec & "=0,0,if((" & RStock & "*100/" & RPrevprec & ">" & Marge_Sup & "),2,"
Formule_Partie_2 = "if((" & RStock & "*100/" & RPrevprec & "<" & Marge_Inf & "),1,0)))"
Cette partie permettait pourtant d'ignorer le 0 ? non ?
merci
Re,
Formule dans JR125:
=SI((JQ125*100/JN125>100);2;SI((JQ125*100/JN125<30);1;0))
Formule dans JR60:
=SI(JN60=0;0;SI((JQ60*100/JN60>300);2;SI((JQ60*100/JN60<80);1;0)))
Vous ete tantinet borne(e) et vous ne lisez pas ce que j'ecris.JR60 a ete mise a jour par le programme prevision et pas JR125 le programme n'est a remettre en cause, donc voir au niveau de vos fichiers stock et cmd pourquoi, quelle(s) infos manque(s).
Formule dans JR125:
=SI((JQ125*100/JN125>100);2;SI((JQ125*100/JN125<30);1;0))
Formule dans JR60:
=SI(JN60=0;0;SI((JQ60*100/JN60>300);2;SI((JQ60*100/JN60<80);1;0)))
Vous ete tantinet borne(e) et vous ne lisez pas ce que j'ecris.JR60 a ete mise a jour par le programme prevision et pas JR125 le programme n'est a remettre en cause, donc voir au niveau de vos fichiers stock et cmd pourquoi, quelle(s) infos manque(s).
Bonjour,
Je suis en train de préparer la gestion de plusieurs entrepôts. Pour cela chaque entrepôt aura un poids du jour différent.
Entrepot lens => tableau poids du jour lens
Entrepots X => tableau poids du jour X ...
Et cela pour 4 entrepots différents. Cela est-il possible ?
merci
Je suis en train de préparer la gestion de plusieurs entrepôts. Pour cela chaque entrepôt aura un poids du jour différent.
Entrepot lens => tableau poids du jour lens
Entrepots X => tableau poids du jour X ...
Et cela pour 4 entrepots différents. Cela est-il possible ?
merci
Bonjour,
Je vais ré-expliquer ma demande plus précisément.
4 entrepôts devraient être à gérer dans le même cadencier. Dans l'onglet paramètres, il y aurait donc 8 tableaux « poids des jours » au lieu des 2 actuels. 2 par entrepôt (semaine normale et semaine avec jour férié). Il faut donc que la macro pour chaque article associe son numéro d'entrepôt (dispo sur une colonne du cadencier) au tableau du poids du jour correspondant.
Est-ce possible ? Voici la macro avec les tableaux des poids des jours : https://www.cjoint.com/c/EEnj1dKPUD9
Merci par avance
Je vais ré-expliquer ma demande plus précisément.
4 entrepôts devraient être à gérer dans le même cadencier. Dans l'onglet paramètres, il y aurait donc 8 tableaux « poids des jours » au lieu des 2 actuels. 2 par entrepôt (semaine normale et semaine avec jour férié). Il faut donc que la macro pour chaque article associe son numéro d'entrepôt (dispo sur une colonne du cadencier) au tableau du poids du jour correspondant.
Est-ce possible ? Voici la macro avec les tableaux des poids des jours : https://www.cjoint.com/c/EEnj1dKPUD9
Merci par avance