Créer plusieurs UserForm ou des CommandButton
Merci Ferdinand,
je venez juste de finir les intégrations des dates sur le mien (mais j'ai pas fait d'essai). cela va me permettre de voir si j'ai bien fait les même chose que toi.
Bonne soirée
et encore merci
@+
Re à tous
Y pas de quoi,
tiens nous au courant de ton avancement,
a+ Ferdinand
Encore merci pour votre aide...
@ Ferdinand,
tout est OK pour les dates (hormis une erreur d'affectation de colonnes que j'ai rectifié).
pour la "Date D" est il possible de faire un contrôle pour que la date ne soit pas inférieure à la date du jour (éventuellement à aujourd'hui + x jours).
Merci pour le bouton "Enregistrer"
@ Galopin, Paritec, Oxydum, Ferdinand
je vous transmettrai demain, le fichier mis à jour
Bonne soirée à Tous
Bonjour Galopin, Oxydum; Paritec, Ferdinand,
pour faire suite à mon post, vous trouver ci joint le fichier en V00_04.
dans la feuille "Boutons" vous trouverez mes annotations.
en vous remerciant encore pour votre aide sur la création de mon premier formulaire.
@+
Francis
Bonjour Fmas,Galopin, Paritec, Oxydum;
En retour ton fichier
- Calcul fait
- Modification commencer sur le N° Ref Byes ( à continuer)
- modification interdite sur (N° Réf. Byes
à la modification - Pour les dates différence je ne sais pas faire (les dates et moi = 2)
Bonne continuation
Bonne journée Ferdinand
Bonsoir à tous,
suite au retour de Fernand, j'ai complété son travail et j'ai fait des essais qui sont concluant.
je remet le dernier fichier (V00_05) avec en feuille "Boutons" l'avancement du projet.
ENCORE MERCI pour votre aide
bonne soirée
Francis
Bonsoir à tous,
Bonsoir Galopin, Paritec, Oxydum, Fernand,
après de long moments de recherche, j'ai réussi à faire remonter dans la Combo "Réf client" les références et à activer les modifications éventuelles dans le fichier.
pouvez vous m'aider sur
* la saisie des données dans les autres feuilles (impossible de trouver qq choses sur le net) mais aussi pour les données qui remonte dans les Combo CbRecherBye et CbRecherClient?
* pour la formule (Montant Devis*10%/375-Nbre de Pointage) j'ai trouvé la solution de recopier la formule dans le classeur excel sur plusieurs lignes et de ce fait la formule fonctionne sauf en modification.
* pour les ref Byes, est il possible d'avoir des références fixes différentes (exemple réf fixe : 2Z9J n° variable: 000 pour la feuille GA 40 et la réf fixe : 2Z9J00. n° variable: 000 pour la feuille AS 40)?
* enfin, comme vous le constaterez, j'ai pris plein de "morceaux de code" par ci et par là et cela doit être un peu (beaucoup) désordonnée.
en cous remerciant pour votre aide
(en PJ le fichier)
encore
Bonjour Fmas,Galopin, Paritec, Oxydum,
Bonne et heureuse année 2020 santé et plein d'autres choses
Pour Fmas une piste
Bonne continuation bonne journée
Ferdinand
Bonjour Ferdinand, Galopin, Paritec, Oxydum,
@ Merci Ferdinand, je regarde.
@ Tous, bonne et heureuse année, pleine de santé, joie, de bonheur, ... et que cette nouvelle 2020 vous apporte plein de bonnes choses...
Francis
Bonjour Ferdinand, Galopin, Paritec, Oxydum,
J'ai intégré le code proposer par Ferdinand sur mon classeur et cela fonctionne par contre je n'arrive pas a modifier les codes pour que chaque feuille incrémente automatiquement le n° de référence et alimente les CbRecherBye et CbRecherClient.
Pouvez vous m'aider ou m'aiguiller sur ce problème?
je joins le dernier fichier
Bonne soirée et encore MERCI
Francis
Bonjour à Tous,
Bonjour Ferdinand, Galopin, Paritec, Oxydum,
A force de persévérance, j'ai trouvé la solution (peut être pas dans les règle de l'art!!!) pour incrémenter les références dans la feuille sélectionnée et d'alimenter convenablement les les CbRecherBye et CbRecherClient.
il me reste le problème de l'incrémentation des Référence Bye (TbRefBye) par rapport à chaque feuille.
En effet suivant la feuille sélectionnée, la réf. bye n'est pas de la même longueur et de ce fait l’incrémentation ne doit pas avoir la même "formule".
voici le code actuel:
'*******************************************************************************
' Permet de sélectionner une feuille et d'incrémenter le n° de Réf Bye
' et faire remonter les infos de de la Cb Recherche Bye(colonne A)
' et celle de la Cb RecherClient (colonne B) de la feuille sélectionnée.
'*******************************************************************************
Private Sub CbChoixFeuille_Change()
Sheets(CbChoixFeuille.Text).Select
CbRecherBye.Clear
CbRecherClient.Clear
Range("A3").Select 'avant de fermer la feuille, positionne la souris en A3
Dim sItem$
sItem = Sheets(CbChoixFeuille.Value).[A3]
Me.TbRefBye.Text = Replace(Left(sItem, 4) & Format(CStr(Val(Right(sItem, 3)) + 1), "000"), ",", ".")
Dim J As Long
Set ws = Sheets(CbChoixFeuille.Value) 'Correspond au nom de la feuille dans le fichier Excel
With CbRecherBye
For J = 3 To ws.Range("A" & Rows.Count).End(xlUp).Row 'Alimente la liste déroulante de la Cb RecherBye à partir de la 3° ligne
.AddItem ws.Range("A" & J)
Next J
End With
Dim I As Long
Set ws = Sheets(CbChoixFeuille.Value) 'Correspond au nom de la feuille dans le fichier Excel
With CbRecherClient
For I = 3 To ws.Range("B" & Rows.Count).End(xlUp).Row 'Alimente la liste déroulante de la Cb RecherClient à partir de la 3° ligne
.AddItem ws.Range("B" & I)
Next I
End With
End Subles différents types de référence sont:
pour la feuille GA 33 = 2Z9M en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille GA 40 = 2Z9J en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille BR 40 = 2Z9F00. en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille AS 40 = 2Z9J00. en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille BR 64 = 2Q9B99. en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille FT 40 = 2Z9H en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille SY 40 EP = 2Z9D en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille SY 40 ER = 2Z9C en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille PR 40 = 2Z9W en fixe et 000 qui s'incrémente jusqu’à 999
j'ai bien compris que cela vient de cette ligne
Me.TbRefBye.Text = Replace(Left(sItem, 4) & Format(CStr(Val(Right(sItem, 3)) + 1), "000"), ",", ".")
mais je ne sais pas comment faire pour la modifier suivant la feuille sélectionné.
En vous remerciant pour l'aide que vous pourrais m'apporter.
Bon dimanche à tous
Cordialement
Francis
Bonjour,
j'arrive un peu tard sur le sujet, mais au passage je propose une version plus facile à mettre en oeuvre ... remplacer un userform par un onglet dédié, on profite d'une mise en plage plus facile, de couleurs simples à mettre en place, de contrôles de formats ...
https://www.excel-pratique.com/fr/telechargements/utilitaires/excel-formulaire-no438.php
Bonjour Steelson,
merci pour ta proposition, mais cela fait près de 2 mois que je travaille sur ce projet (à temps partiel) et je suis sur la dernière ligne droite (en fin je crois)...
le projet global est d'avoir un seul userform pour remplir 10 feuille excel avec des saisie presque identique à chaque feuille.
en te remerciant et te souhaitant une bonne année.
Bonjour Fmas,Galopin, Paritec, Oxydum, Steelson et le forum
les différents types de référence sont:
pour la feuille GA 33 = 2Z9M en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille GA 40 = 2Z9J en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille BR 40 = 2Z9F00. en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille AS 40 = 2Z9J00. en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille BR 64 = 2Q9B99. en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille FT 40 = 2Z9H en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille SY 40 EP = 2Z9D en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille SY 40 ER = 2Z9C en fixe et 000 qui s'incrémente jusqu’à 999
pour la feuille PR 40 = 2Z9W en fixe et 000 qui s'incrémente jusqu’à 999
Pourquoi des références 2Z9J00.,2Q9B99.,2Z9F00. pour le plus simple (2Z9J, 2Q9B, 2Z9F) se sera plus pratique pour traiter ta demande par une personne, si il y a une personne qui y arrive...,
Bonne continuation, FERDINAND
MERCI Ferdinand,
je vais voir pour n'avoir qu'un seul type de référence à 4 ou 7 chiffres/lettres fixe pour toutes les feuilles.
je regarde le fichier et je reviens vers toi (vous).
Merci à tous
bonne fin de journée
Francis
Re à tous
erreur sur le classeur,
bonne continuation
ferdinand
Bonsoir fmas et le forum,
je refait surface je laisse un classeur
si ta un autres classeur met le en ligne
bonne soirée
Ferdinand
Bonjour / Bonsoir Ferdinand et à tous,
Désolé pour cette réponse tardive (pris par d'autre obligations mais aussi "Gloria").
je joint le dernier fichier compilé avec mes dernière modification et l'intégration de celle de Ferdinand que je REMERCIE fortement.
je pense que le projet est presque "bouclé", encore 2 petits points pour le finaliser:
* Ferdinand, merci pour ta case à cocher pour afficher ou pas le Frame1, serait il possible de le faire apparaître que si l'on coche le CheckBox ?
* à la saisie de la Réf Client (TbRefClient) la macro contrôle si cette référence existe déjà et ouvre un message d'information. est il possible que le contrôle ne se fasse pas sur les cellule vide?
'*****************************************************************************
'Informer de la saisie de numéro de REFERENCE CLIENT en double
'*****************************************************************************
Private Sub TbRefClient_Exit(ByVal Cancel As MSForms.ReturnBoolean)
' On se positionne sur la feuille active
ActiveSheet.Range("B3").Select
' on parcours toutes les cellules de la colonne "B" jusqu'a :
' soit la valeur est trouvée où la première cellule vide
Do Until ActiveCell = UCase(Me.TbRefClient) Or ActiveCell = ""
ActiveCell.Offset(1, 0).Select 'on descend d'une ligne vers le bas
Loop
' on teste si la valeur est trouvée.
If ActiveCell = UCase(Me.TbRefClient.Value) Then
MsgBox "!!! La référence client " & ActiveCell & " existe déjà dans la base. !!!!", vbOKOnly + vbExclamation, "!!! ALERTE !!!"
Else
Exit Sub
End If
End SubEncore MERCI pour votre aideet vous souhaite un bon WE
Francis
Bonjour FMAS
C'est un bon travail, j'ai un peu le même projet, est ce que tu as finalisé le tiens et est ce qu'il fonctionne ?
Bien à toi