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)
J'espére que Galopin, Paritec, Oxydum; trouveront la solution,

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 pour votre aide

Bonjour Fmas,Galopin, Paritec, Oxydum,

Bonne et heureuse année 2020 santé et plein d'autres choses

Pour Fmas une piste

https://www.excel-downloads.com/threads/transferer-donnees-userform-dans-feuille-choisi-dans-combobox.20039932/#post-20285279

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 Sub

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

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 Sub

Encore 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

Rechercher des sujets similaires à "creer userform commandbutton"