Macro pour journal de caisse

Fermé
Crsi68300 Messages postés 7 Date d'inscription mercredi 20 septembre 2017 Statut Membre Dernière intervention 22 septembre 2017 - Modifié le 20 sept. 2017 à 17:09
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018 - 19 janv. 2018 à 15:23
Bonjour à tous,

J'ai débuté un fichier pour une entreprise, mais je bloque déjà car trop complexe pour moi.
(je fais ça afin de m'améliorer sur Excel...)

Le but serait quand cliquant sur le mode de paiement, ça copie les données dans journal de caisse, sur la bonne ligne en fonction de la date, et sinon se serait trop simple, additionne au fur et à mesure les ventes.

Ensuite, viens déduire les produits du stock.

J'ai vraiment l'impression que c'est irréalisable...

Si quelqu'un peut m'aider?

Merci d'avance
Cris

https://www.cjoint.com/doc/17_09/GIuoXt4NBhD_Suivi-CA-Stock.xlsm
A voir également:

64 réponses

Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
4 nov. 2017 à 17:48
Bonjour Via, Le forum

J'ai enfin retrouvé du temps pour me remettre sur le fichier.

Je l'ai présenté à la personne qui s'en servira et celle-ci m'a fait une remarque de taille. Si plusieurs mode de règlement.
Du coup j'ai rajouté un paiement multiple dans userform de la validation du ticket, celui-ci renvoi sur un nouveau userform.

Mais voici mon premier problème. Je n'arrive pas à additionner les txtbox.

Le but étant d'additionner les txtbox 5,7,8,9,10,11,12 pour afficher dans 13 le montant payé et venir afficher dans 6 le rendu monnaie.

Si tu as un peu de temps je veux bien, une nouvelle fois un peu d'aide...

Cdt,
Cris

https://mon-partage.fr/f/vrrqdgQA/
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
4 nov. 2017 à 18:53
Bonjour,

Ton fichier avec modifs
https://mon-partage.fr/f/tdReLv1L/
Petit plus : on ne peux écrire dans les textbox des paiements que si la case à cocher a bien été cochée

Cdlmnt
Via
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
4 nov. 2017 à 19:09
Je ne sais pas comment tu fais tout ça....J'essaye comme d'habitude de comprendre quand tu m'envoie des corrections, mais là...

Merci encore une fois de ta rapidité de réponse.

Merci beaucoup.

Cris
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703 > Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
4 nov. 2017 à 19:51
Petites explications :

Pour interagir à l'entrée de données dans textbox il faut préférer Before update à Change car ce dernier s'effectue à chaque frappe clavier (donc si tu tapes 1000 il s'active 4 fois) alors que before update s'active à l'appui sur Entrée juste avant la validation de la saisie

Même si tu entres des chiffres dans un textbox Excel les traite comme du texte d'où la nécessité de transformer ce texte en numérique pour faire des calculs d'où les instructions Val()

Pour rendre un textbox inactif il faut dans ses Propriétés mettre le critère Enabled à True

Demandes moi si d'autres points te semblent obscurs
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
5 nov. 2017 à 10:50
Bonjour Via,

Merci pour ces infos très instructives.

Je change de sujet, lors de l'extraction mensuelle, je copie tout le suivi des ventes dans un autres fichier, de façon à alléger le programme.

J'ai réussi à lui faire ouvrir le fichier, couper les données etc...
Il me restera plus qu'a refermer le second fichier (chose que je vais faire maintenant.

Par contre, cela fonctionne que pour janvier!
Lorsque je sélectionne un autre mois j'ai une erreur sur:
Sheets("FEVRIER").Range("B2").Select

Voici le code:

fic = "D:\Cris\Excel\Projet Jess\Suivi des ventes mensuelles.xlsm"
Set wb = Workbooks.Open(fic)

With Windows("Suivi des ventes mensuelles.xlsm").Activate

If ComboBox1.Value = "Janvier" Then Sheets("JANVIER").Range("B2").Select
If ComboBox1.Value = "Février" Then Sheets("FEVRIER").Range("B2").Select
If ComboBox1.Value = "Mars" Then Sheets("MARS").Range("B2").Select
If ComboBox1.Value = "Avril" Then Sheets("AVRIL").Range("B2").Select
If ComboBox1.Value = "Mai" Then Sheets("MAI").Range("B2").Select
If ComboBox1.Value = "Juin" Then Sheets("JUIN").Select
If ComboBox1.Value = "Juillet" Then Sheets("JUILLET").Range("B2").Select
If ComboBox1.Value = "Aout" Then Sheets("AOUT").Range("B2").Select
If ComboBox1.Value = "Septembre" Then Sheets("SEPT").Range("B2").Select
If ComboBox1.Value = "Octobre" Then Sheets("OCTOBRE").Range("B2").Select
If ComboBox1.Value = "Novembre" Then Sheets("NOV").Range("B2").Select
If ComboBox1.Value = "Décembre" Then Sheets("DEC").Range("B2").Select


Cdt,
Cris
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
Modifié le 5 nov. 2017 à 12:37
J'ai trouvé,

J'ai pu supprimer toutes les lignes IF. J'ai nommé tous les onglets à l'identique des réponses de la combo et utilise 1 seule ligne:

Worksheets(ComboBox1.Value).Select

ça à l'air de fonctionner.

Cris
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703 > Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
5 nov. 2017 à 12:38
Bien ;-)
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
5 nov. 2017 à 12:50
Re Bonjour Via,

Je t'embête encore, la dernière fois je t'ai parler d'un problème avec la combo de recherche clients. Celle-ci s'ouvre sur d'autre onglet quand je double clic sur une cellule. Et reste ouverte très souvent.

Après plusieurs test, voici se que j'ai trouver:

Code utiliser actuellement:

Private Sub ComboBox1_Change()
ComboBox1.ListFillRange = "Recherche"
Me.ComboBox1.DropDown
End Sub

Et lorsque j'enlève la ligne: Me.ComboBox1.DropDown

Je n'ai plus du tout de problème d'ouverture intempestif sur d'autre onglet, donc sais tu comment garder le dropdown sans générer cette gène?

Merci d'avance.

Cris
0

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

Posez votre question
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
5 nov. 2017 à 13:53
Je ne sais pas pourquoi ce dysfonctionnement et je n'arrive pas à la reproduire chez moi; le double-clic dans d'autre feuilles n'ouvre pas la fenêtre

As tu besoin de cette propriété dropdown ? Perso je ne l’utilise jamais

Cdlmnt
Via
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
5 nov. 2017 à 14:16
Ok je verrais si même problème à l'installation du programme sur PC de mon amie, je supprimerai dropdown.

Merci d'avoir répondu.

Cdt,
Cris
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
Modifié le 5 nov. 2017 à 14:25
Ce matin, je t'ai parlé du RAZ Mensuel de façon à épurer le suivi des ventes.

Tout fonctionne, mais problème de taille; car nous avons complété les fréquentations 6 mois / 12 mois et de même pour CA dans les fiches clients, sur la base du suivi des ventes. Donc quand j'effectue le RAZ, forcément mes fréquentations des les fiches clients reviennent toute à 0.

Je cherche une façon de comptabiliser ces données, mois par mois soit dans paramètre soit sur la droite des fiches clients et cacher en blanc au moment voulu. (ou dans le fichier complémentaire)

Sais-tu comment je peux m'y prendre?

Merci d'avance,
Cris

https://mon-partage.fr/f/jTMZ0Yxd/
https://mon-partage.fr/f/1SCS54wg/
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
5 nov. 2017 à 14:44
A première vue le plus simple est de créer dans la feuille clients après la date de naissance 12 colonnes pour les 12 mois et dans la macro caisse faire ajouter la somme vendue dans le bon mois
Ensuite les formules mois glissants n'ont pas besoin d'aller chercher dans suivi caisse
Si tu veux utiliser sur plusieurs années tu prévois 24 colonnes pour les 12 mois de 2 années (ce qui permet le calcul des 12 mois glissants
Si tu veux garder les sommes dépensées par un client tu prévois une colonne supplémentaire années précédentes et tu prévois une macro qui lorsque 2 ans sont écoulés fais les somme des 24 colonnes, l'ajoute au total précédent et efface les 24 colonnes pour une nouvelle durée de 2 ans
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
5 nov. 2017 à 15:34
Je suis parti dans une autre direction.
Pour pas ralentir l'encaissement qui est déjà très lourd.

J'ai créer 24 colonnes sur la droite des fiches clients (cachées en blanc par la suite).

Lors du RAZ Mensuel, si janvier choisi dans la combo, venir renseigner les sommes dans la colonne correspondante avant la suppression du suivi client.

Le problème est qu'il faut faire coïncider les noms des clients donc sa devient trop complexe pour moi.

Même ta solution me semble complexe pour moi, je ne pense pas pouvoir le codé mais je vais essayer.

Je suis en train de me dire. Si je fais une stat simple sur le côté du 2ieme fichiers, et que l'on travaille en permanence avec les 2 fichiers ouverts. Celui-ci pourrait me servir de base de données et cela ferais une solution plus simple non?
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703 > Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
5 nov. 2017 à 15:43
Oui si tu peux travailler avec les 2 fichiers ouverts c’est la solution la plus simple et qui allège le fichier 1
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
5 nov. 2017 à 15:45
Dans ce cas je travaille dans ce sens et je reviendrais vers toi par la suite pour savoir comment aller chercher les infos dans le deuxième fichier pour tenir à jour les fiches clients.
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018 > via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024
Modifié le 5 nov. 2017 à 18:08
Voila où j'en suis,

J'ai créer une liste dynamique sans doublon dans le second fichier pour chaque mois.
Fais la recherche de la somme et le nombre de passage de chaque client.

Je te laisse regarder:

https://mon-partage.fr/f/rcbwSp7d/ 'fichier principal

https://mon-partage.fr/f/DvNwtHrC/ 'fichier de stockage données

Par contre maintenant je ne sais pas comment faire, quelle formule utiliser dans le fichier de base, (onglet clients), pour venir reporter les sommes dans chaque client ainsi que les passages, en fonction de la date.
Si mois <6 mois prendre en compte sinon ne plus prend en compte.

Cdt,
Cris
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703 > Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
5 nov. 2017 à 18:08
Tu as envoyé 2 fois le fichier principal !
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
5 nov. 2017 à 20:22
La solution la plus simple que je vois pour l'instant :
1) Dans la fichier secondaire créer une feuille clients avec en colonne A une liaison avec le la colonne des noms de feuille Clients du fichier principal (tu sais faire une liaison ?)
Après 12 colonnes pour les 12 mois où on rapatrie avec une formule SOMME.SI pour chaque client son total de chaque feuille mois
Après ces 12 colonnes, 2 autres colonnes : l'une où se font les totaux individuels des 6 derniers mois, l'autre ceux des 12 derniers mois
2) De nouveau une liaison mais dans l'autre sens dans les deux colonnes des mois glissants de la feuille Clients du fichier principal

Cdlmnt
Via
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
Modifié le 6 nov. 2017 à 00:01
Via,

Tout est ok, je te remercie encore.

J'ai également ajouté l'ancienne formule, de se fait, j'ai l'historique venant du fichier de sauvegarde et également les passages et CA du mois en cours avant le RAZ.

C'est parfait!!!

Cette après midi, j'ai travaillé sur les stats, j'ai bien avancé, donc maintenant je me mets sur l'extraction. Je t'en dirais plus dès que je rencontrerais des difficultés...

Bien cordialement,
Cris
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
8 nov. 2017 à 15:49
Bonjour Via, Le forum,

Bon finalement je n'ai pas fini, car en me plongeant aujourd'hui dans la partie comptable je me rends compte que je n'ai pas de valeur de stock.

Donc je reprends entièrement l'onglet réception, ainsi que celui du stock.

Là j'ai fini l'onglet réception dans la forme mais je me mets à programmer.

Donc voici ma question:

Pour une combo, comment puis je faire son row source en fonction du fournisseur que j'ai sélectionné dans la première combo "choix du fournisseur"?

Je pense que c'est relativement simple, si tu m'expliques, je devrais y arriver.

Merci d'avance,

Cdt,
Cris

https://mon-partage.fr/f/J3CJcli7/
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
8 nov. 2017 à 17:19
Bonjour Cris

Comme on a de la chance que les 2 fournisseurs ayant la même liste de produits j'ai opté pour la solution suivante :
- dans Parametre les listes de produits nommées listeZ, liste A .. c'est à dire liste suivi de l'initiale du fournisseur
- macro associé à un changement dans le combobox du chois du fournisseur pour modifier la propriété ListFillRange du combox2 en recomposant un nom de plage valide avec liste et initiale du fournisseur
https://mon-partage.fr/f/8SvWTAJJ/

Cdlmnt
Via
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
8 nov. 2017 à 22:04
Via,

ça fonctionne parfaitement,
mais encore une fois pour ma culture personnelle, peux tu m'expliquer:

ComboBox2.ListFillRange = "liste" & Left(ComboBox1.Value, 1):

"liste" & Left : comment cela se fait que ça va chercher les 4 listes, juste en écrivant liste et non listeA, listeZ, etc... Et quel est le rôle de Left?

Désolé mais je n'arrive pas à suivre là (et j'aime apprendre...)

Merci en tout cas, tu es super comme d'habitude!!!

Cdt,
Cris
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703 > Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
8 nov. 2017 à 23:12
Bonsoir Cris

Tu as bien raison de vouloir comprendre !

Alors, les 4 plages de listes étant nommées et présentes donc dans le Pensionnaire de noms, si on mettait dans la propriété ListFillRange du combox listeA il irait chercher la liste nommée ainsi, idem pour listeZ etc; donc il faut qu'à chaque changement de fournisseur dans le combo 1 cette adresse soit modifiée en concaténant le mot liste et l'initiale du nom du fournisseur par ex avec ZAO on doit avoir listeZ
par formule ce serait ="liste" & GAUCHE(nom fournisseur;1) pour prendre une lettre à la gauche du nom du fournisseur ce qui en VBA (puisque instruction en anglais) devient = "liste" & Left(ComboBox1.Value, 1)

Cdlmnt
Via
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018 > via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024
8 nov. 2017 à 23:17
Logique effectivement,

ton explication est très explicite, donc aucune perte de temps pour comprendre, merci!!

Tu n'imagines même pas comment j'ai appris et progressé grâce à toi ces derniers temps.

Merci vraiment.

Cris
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
Modifié le 9 nov. 2017 à 13:32
Bonjour Via,

J'ai fini de codé (presque tout seul!) la réception.

Maintenant je travaille sur la validation de celle-ci qui va donc transférer les donnés dans le stock. Pour explication, je dois transférer la quantité, le prix d'achat et celui de vente.

Donc j'ai fait une boucle sur la colonne source, ça c'est ok.

Par contre voilà, j'ai un problème et une question.
Mon problème:

Lorsque je valide, voici le code:

If ComboBox1.Value = "ZAO" And Range("G" & f) = "Accessoire" Then .Range("E5") = .Range("E5") + Range("K" & f)
.Range("I5") = .Range("I5") + Range("H" & f)
.Range("K5") = .Range("K5") + Range("J" & f)

La première instruction se trouvant derrière "Then" fonctionne parfaitement en tenant compte des 2 instructions, il s'agit de la quantité.
Mais les 2 suivantes, (les tarifs) se reportent sans respecter les conditions.

Il y a t'il un mot supplémentaire à placer devant? (j'ai essayé And, Else...)

Puis ma question:

Je dois effectuer toutes cette ligne pour chaque produit de chaque fournisseur. Vois tu une façon de raccourcir? j'ai un peu peur de reprendre de la lenteur sinon, alors que je n'en ai plus du tout actuellement.

Merci d'avance Via,

Cordialement,
Cris
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
9 nov. 2017 à 13:43
Bonjour Cris

Solution 1 :
If ComboBox1.Value = "ZAO" And Range("G" & f) = "Accessoire" Then .Range("E5") = .Range("E5") + Range("K" & f):.Range("I5") = .Range("I5") + Range("H" & f):.Range("K5") = .Range("K5") + Range("J" & f)

Lorsque plusieurs instructions suivent un IF il faut les séparer par 2 points

Solution 2 :
If ComboBox1.Value = "ZAO" And Range("G" & f) = "Accessoire" Then .Range("E5") = .Range("E5") + Range("K" & f)
.Range("I5") = .Range("I5") + Range("H" & f)
.Range("K5") = .Range("K5") + Range("J" & f)
End if

Si les instructions sont sur des lignes différentes on met End if après pour les instructions au dessus ne soient exécutées que lorsque la condition du If est vraie

Pour la simplification c'est sûrement possible par une boucle,
renvoie moi ton fichier avec ton code actuel

Cdlmnt
Via
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
9 nov. 2017 à 13:57
Je t' avoue y voir beaucoup plus clair. Les " : " je ne connaissais absolument pas, on ne les avaient pas utilisé jusqu' à là, mais je ne comprenais jamais pourquoi des fois on utilisais End If et d''autre fois non...

Je te laisse le fichier et vais de ce pas corriger le code et tester.

https://mon-partage.fr/f/Mkid3RPP/

Vu que tu as le fichier, j'en profite, si tu trouves une idée pour sécuriser la réception. C'est à dire, j'ai un peu peur, vu qu'on a des noms de produits identiques dans différents fournisseurs, si par mégarde la personne change de fournisseur dans la combo1 alors qu'elle avait déjà commencé avec un autre, elle va générer des faux stocks.

Donc je me suis demandé, si nous pouvions bloquer la combo et qu'elle se re-débloque lors de la validation.

ou

Juste générer un message, Attention réception en cours, voulez-vous l'effacer, et on vide le tableau si ok.

Qu'en penses tu?

Cordialement,
Cris
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703 > Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
9 nov. 2017 à 14:09
OK, je suis au boulot là, je regarde tout ça en rentrant et tiens au courant
A+
Via
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018 > via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024
9 nov. 2017 à 14:12
Super merci Via,

Par contre je viens de penser, j'ai la solution la plus sécurisée pour ma dernière question. Je rajoute une colonne fournisseur de le détail de la réception, et celle-ci servira de référence lors de la validation et non la valeur de la combo. En plus de la sorte, on peut réceptionner plusieurs fournisseurs à la fois.

Je fais ça de suite.

Bon travaille et bonne aprém.

Cris
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
9 nov. 2017 à 14:27
Voilà c'est fait, je te l'envoie car se sera mieux pour toi d'avoir le fichier à jour:

https://mon-partage.fr/f/9c0DdytD/

Cris
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
9 nov. 2017 à 15:20
Encore moi,

Juste pour te dire, tout est terminé et fonctionnel.

Le code est très long mais aucun ralentissement...

Si tu veux voir:

https://mon-partage.fr/f/cQwY5j6I/

Cdt,
Cris
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
10 nov. 2017 à 19:42
Bonsoir Via,

Toute la journée, j'ai avancé sur la partie Statistique.

Tout est en forme ça y est, même si j'ai du rajouter beaucoup de paramètres pour analyser le nombre de fois qu'un code postal passe en caisse, ainsi qu'une liste dynamique sans doublon des codes postaux et d'un pourcentage de codes postaux afin d'avoir un rendu sur la zone de chalandise.
Ainsi elle pourra mieux diriger sa comm pub...

Par contre là je suis sur la partie anniversaire client, de façon à savoir quel client est né ce mois ci, et pouvoir lancer une offre si besoin d'activité.

Voici ma formule:

=SIERREUR(INDEX(Cherche1;EQUIV(Clients!K:K;"="&MOIS(AUJOURDHUI());0));"")


Cherche1 = liste des clients
K:K = mois de naissance (en nombre)

Mais aucun résultat... juste erreur "valeur" (si j'enlève SIERREUR).

Est ce que tu as une idée de mon erreur?
C'est à chaque fois qu'il y a une histoire de date (aujourd'hui) que je bloque...

Cdt,
Cris
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
10 nov. 2017 à 19:45
Bonsoir Cris

Je suis de sortie ce soir, je regarderai ton fichier en rentrant si tu me le postes sur mon-partage
A+
Cdlmnt
Via
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
10 nov. 2017 à 19:50
Pas de soucis,

https://mon-partage.fr/f/VQCQVxIo/

Sheets STATISTIQUE

cellule H38

Je te souhaite une très bonne soirée.

Cris
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
10 nov. 2017 à 22:57
Le plus simple en rajoutant des colonels dans Clients :
https://mon-partage.fr/f/ydiuNmRm/

Bien cdlmnt
Via
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
10 nov. 2017 à 23:08
MAGNIFIQUE VIA!!!!

Je n'aurais pas su le faire...

Merci beaucoup et très bonne fin de soirée!

Cdt,
Cris
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
11 nov. 2017 à 04:18
Bonjour Via,

J'ai passé la nuit à essayer d'extraire les stats... mais en vain.

Je n'arrive pas à comprendre, pourtant il s'agit de quelque chose déjà fait...

Peut être un peu de sommeil pour éclairer le cerveau.

Je te laisse les 2 fichiers si tu veux voir où j'en suis:

https://mon-partage.fr/f/5Deziyo3/
https://mon-partage.fr/f/g2segIP2/

Le but c'est en fonction de la sélection de USFextract on vienne remplacer les données dans le 2ieme fichier. Juste l' identité car après je ferais un lien pour les mails, téléphones, etc...

Si tu vois mon erreur, je suis preneur.
Je me remets dessus dés mon réveil.

Bonne journée à toi.

Cris
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
11 nov. 2017 à 11:49
Bonjour

1) il faut une instruction Workbooks (classeur) et non Window pour que cela fonctionne (je ne sais pas pourquoi)
2) Tu n'as pas mis les . devant les Range à l'intérieur du With

Remplace la partie de macro concernée par celle-là :
With Workbooks("Fichier extraction des stats.xlsm")
.Activate
.Sheets("MAIL").Select
.Sheets("MAIL").Range("C2").Select

    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False

End With


Bon WE
Via
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
11 nov. 2017 à 14:40
Merci Via,

Bon WE également,

Cris
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
13 nov. 2017 à 19:44
Bonsoir Via,

Je ne sais pas si ça va être très compréhensif mais j'essaye.

J'ai crée un commandButton2 sur une page. Celui-ci est la validation d'un certain nombre de chose. Son code fonctionne parfaitement.

Maintenant, dans le tableau de bord, en validant une commande dans un userform, j'ai besoin d'écrire l'action d'exécuter le commandbutton2 de l'autre onglet.

J'ai essayé: .Click , .Activate , .select

Je te donne l'exemple:

With Sheets("STATISTIQUE")
For i = 0 To 11

If Cbxmois.ListIndex = i Then .ComboBox1 = Cbxmois.Value

Next i

CommandButton2


Unload Me

End With

Mais rien ne fonctionne.

Sais tu quelle fonction dois je utiliser?

Merci d'avance si tu as la réponse,
Cris
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
13 nov. 2017 à 20:24
Bonsoir Cris

A ma connaissance tu ne peux pas actionner un bouton d'une feuille depuis une autre feuille ou un UF
mais si tu veux utiliser la même macro il ne faut pas la mettre dans la sub du bouton mais en faire une macro dans un module ex :
Sub validations
tes lignes de codes
End Sub

Ensuite pour la lancer d'un bouton ou a partir d'une autre macro il suffit dans une ligne de code me mettre le nom de cette macro :
Pour le bouton :
Private Sub CommandButton1_Click()
validations
End Sub
Pour une autre macro
Sub macrotrucmachin
lignes de codes éventuellement à exécuter avant
validations
lignes de codes éventuellement à exécuter après
End Sub

Cdlmnt
Via
0
Cris68300 Messages postés 104 Date d'inscription dimanche 27 août 2017 Statut Membre Dernière intervention 21 septembre 2018
15 nov. 2017 à 17:33
Bonsoir Via,

Un merci tardif pour ta réponse, déplacement pro qui m'a empêché de continuer, désolé.

Je m'y remets là, mais il est vrai que le soir même, à la suite de ta réponse, qui en plus est très logique, je n'y arrivais pas. Surement la fatigue donc je regarde ça de suite et te fais un retour...

Merci encore,
Bonne soirée,

Cris
0