VBA pour Enregistrer une donnée à l'intersection de ligne et colonne [Résolu]

Signaler
-
 dm -
Bonjour,

J'ai besoin d'un code VBA excel me permettant d'enregistrer une donnée(un entier) à l'intersection des lignes( contenant des produits)et colonne(exprimée en date)

16 réponses

Messages postés
946
Date d'inscription
samedi 2 février 2019
Statut
Membre
Dernière intervention
12 septembre 2020
98
Bonjour,
d'après vous, pourrons-nous vous aider avec si peu d'infos !?
Bjr Yoyo,
Considérer la manière la plus simple, on doit aller enregistrer sur une feuille excel les quantités de vente des produits (considérer les produits prod1 à prod 10 ) de colonne A, lignes 2-11; sur une période du 1er Janvier 2020 au 31 Janvier 2020 (de la ligne 1, à partir de la colonne B) le code VBA va fonctionner de telle sorte que à la sélection d'une date quelconque dans un combobox et d'un produit dans un autre combobox, la quantité de vente d'un produit dans un box soit enregistrée dans l'intersection produit-date.
Bonjour, Y-A-T-IL une suite favorable par rapport à cette. requête?
Messages postés
12613
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
13 septembre 2020
2 005
Bonjour

Il pourra y avoir une suite si tu fournis un exemple de ton fichier; à poster sur cjoint.com, copier le lien créé et revenir le coller ici

Cdlmnt
Via
Le fichier que j'utilise est Complexe. Si v pouvez prendre l'exemple le plus simple que j'ai fourni ci -haut.
Merci
dm
Messages postés
12613
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
13 septembre 2020
2 005
Tu n'as pas fourni de fichier exemple
Fournis un fichier simplifié en le postant sur mon-partage.fr, en copiant le lien créé et en revenant le coller ici, qu'on puisse avoir une base de travail, on avisera alors
Voici le lien du fichier:
https://mon-partage.fr/f/dGczQh1J/

Une autre information, si la cellule à l'intersection ligne-colonne est occupée, le code VBA devra additionner la valeur à enregistrer à la valeur trouvée.
Merci
Messages postés
12613
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
13 septembre 2020
2 005
Ton fichier en retour avec macro
https://mon-partage.fr/f/OOyzfE9y/

Cdlmnt
Via
Cher Via 55 , merci bcp, ton code marche parfaitement bien avc le fichier sample que j'ai voulu d'abord présenter le plus simple possible. J'attache maintenant le sample1 qui illustre mon environnement. Pourriez-vous vous SVP adapter le code en tenant compte d'un éventuel élargissement de la liste des produits. Merci d'avance.
Voici le lien:
https://mon-partage.fr/f/qlwCOywC/
Messages postés
12613
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
13 septembre 2020
2 005
Re,

Il n'y a rien à changer dans le code, l'userform est basé sur la liste de produits qui est une plage nommée dans le Gestionnaire de noms actuellement la plage Feuil1!$A$3:$A$12
Pour étendre la plage aller dans le ruban à Formules - Gestionnaire de noms - Produits et changer la plage dans Fait référence à
Bsr, Oui c vrai, mais si vous pouvez jeter un coup d'oei, vous verrez que à part l'élargissement des colonnes, nou devons enregistrer 5 valeurs pour une même date. Sûrement une petite modification interviendrait sur le code. Merci
Messages postés
12613
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
13 septembre 2020
2 005
Je ne vois que 2 valeurs par date Quantity 1 et 2 ?

Discount in $, discount in % et daily expenses
Messages postés
12613
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
13 septembre 2020
2 005
OK par contre je ne vois pas daily expenses dans ton tableau !
macro associée au nouveau bouton
https://mon-partage.fr/f/NoFNIDBa/
Cher Via55, je sais comment te remercier, ton code, tant restreint qu'il soit, est exceptionnel, e marche parfaitement bien. Si tu délivrais le cours de VBA je serais ton premier élève. Daily expenses comprend les cellules: G11( pr la date du 1/1/2020), K11(pr la date du 2/1/2020), O11(pr la date du 3/1/2020), S11.... Je les avais identifiées par un commentaire, peut-être il a disparu avec le transfert de fichier. Si ça sera possible d'ajouter ce petit détail. Puison pourra clôturer le sujet.
Merci infiniment
Dm
Messages postés
12613
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
13 septembre 2020
2 005
Non il n'y a plus de commentaires!
Ok pour G11 il suffit que tu rajoutes dans la macro cette ligne :
ActiveSheet.Cells(11, col) = ActiveSheet.Cells(11, col) + Val(exp.Value)

mais H11 I11 et J11 ??
C'est déjà bcp, tu m'as énormément aidé, pr le reste, je vais pouvoir m'appliquer. Merci encore. Je clôture le sujet. Que Dieu vous bénisse!!!