IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

données automatiques dans userform


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 30
    Par défaut données automatiques dans userform
    bonjour,
    je voudrais dans mon usf"clients" que lorsque je clique sur ma combobox "société" et que je choisis un client, toutes les données de mon client(enregistrées sur ma feuille excel"clients")s'affichent (société,adresse,nom du contact, etc...)dans mon userform
    Je voudrais également quand j'ouvre l'usf "clients" et que je clique sur "bons"(qui m'ouvre l'usf"bons"), ca s'enregistre avec le nom du client dans un tableau excel(que je puisse par la suite faire une recherche par client, savoir ce qu'il a ramené comme matériel.
    Dans l'usf"bons" mes données vont aller sur un tableau excell
    les designations sont (ecran, ordinateur, disque dur, etc)sachant que chaque ligne de mon usf"bons" correspond à une palette, donc je peux avoir plusieurs et meme designation, je voudrais que dans mon tableau excell si par exemple j'ai 10 ecrans 100kg et 20 ecrans 200kg, dans mon tableau ca soit marqué sous ecran,10et 20, ou 30 (je ne sais pas comment construire mon tableau excel pour que ce soit faisable.
    Je tiens à préciser que je débute en vba, et j'ai réussi à faire tous mes usf qui marchent, c'est un bon début.

    Mais là j'ai vraiment besoin de votre aide car je coince
    Je vous joints des copies de mes usf. J'aurais bien voulu mettre en pièce jointe mon fichier complet mais il fait 952kocompressé donc impossible

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Bonjour,
    Un classeur avec des idées...
    http://www.developpez.net/forums/d73...m/#post4281448
    A+

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 30
    Par défaut enregistrement données usf dans tableau excel
    Bonjour,

    je voudrais quand j'enregistre les données de mon usf les données aillent directement dans mon tableau.
    J'ai réussi avec le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Private Sub Commandvalider_Click()
    Sheets("clients").Activate
    Societeconverti = Application.WorksheetFunction.Proper(Me.clnomsociete.Text)
    Villeconverti = Application.WorksheetFunction.Proper(Me.ComboBoxville.Text)
    Contactconverti = Application.WorksheetFunction.Proper(Me.Combocontact.Text)
    Range("A65536").End(xlUp).Offset(1, 0).Value = clnomsociete.Value
    Range("B65536").End(xlUp).Offset(1, 0).Value = adresse.Value
    Range("C65536").End(xlUp).Offset(1, 0).Value = adress1.Value
    Range("D65536").End(xlUp).Offset(1, 0).Value = ComboBoxcp.Value
    Range("E65536").End(xlUp).Offset(1, 0).Value = ComboBoxville.Value
    Range("F65536").End(xlUp).Offset(1, 0).Value = Combotitre.Value
    Range("G65536").End(xlUp).Offset(1, 0).Value = Combocontact.Value
    Range("H65536").End(xlUp).Offset(1, 0).Value = TextBoxtel.Value
    Range("I65536").End(xlUp).Offset(1, 0).Value = TextBoxport.Value
    Range("J65536").End(xlUp).Offset(1, 0).Value = TextBoxfax.Value
    Range("K65536").End(xlUp).Offset(1, 0).Value = TextBoxmail.Value
    Range("L65536").End(xlUp).Offset(1, 0).Value = TextBoxsiteweb.Value
    Unload Me
    End Sub
    Mais je voudrais que mes données s'enregistre sans tenir compte des blancs
    c'est à dire que si je rentre
    gifi
    rue de reims
    59200
    tourcoing
    (je ne rentre pas de n°tel) ca s'enregistre sur la ligne 1
    gifi1
    rue de rennes
    tourcoing
    0303030303, que ca s'enregistre sur la ligne 2 (car avec le code que j'ai, le téléphone va être mis sur la ligne 1(tel) vu que ma première entrée, j'ai pas mis de tél
    donc je voudrais que mes entrées soint enregistréees l'une en desous de l'autre sans tenir compte des blancs
    est ce que c'est possible, qu'est ce que je dois changer dans mon code?
    et je voudrais également savoir comment faire pour rentrer mes données sans doublons (c'est à dire que si je rentre un client qui est déjà sur ma liste et que je change des données, il ne m'enregistre pas une ligne mais me remplace les nouvelles données)

    merci à tous de m'aider.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 30
    Par défaut
    bonjour LeForestier,
    j'ai récupéré un bout de code
    d'après toi est ce qu'il peut marcher pour ce que je veux faire?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    dim recherche as range
    ...
    Set clnomsociete = Cells.Find(What:="clnomsociete", After:=ActiveCell, LookIn:=xlFormulas, _
            LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False)
    on error resume next
    adresse.text=clnomsociete.offset(0,1)
    adresse1.text=clnomsocite.offset(0,2)
    ...
     
    on error goto 0
    Merci à toi

  5. #5
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 71

    Informations forums :
    Inscription : Février 2009
    Messages : 36
    Par défaut
    Bonjour,

    Pour éviter d'écrire à la fin de chaque colonne, il suffit de ne disposer que d'une seule référence.

    Dans ta base de données, il doit y avoir une donnée obligatoire.

    C'est sur cette donnée qu'il faut rechercher le numéro de ligne active, et le charger dans une variable.

    Exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nLignes=Range("A65536").End(xlUp).Offset(1, 0).row+1
    Pour rechercher un enregistrement existant, il faut adopter quelques principes des bases de données:

    Puisque tu doit avoir une donnée obligatoire, fais en sorte qu'elle soit unique:
    Le principe de l'unicité fait que chaque enregistrement doit être identifiable par un seul et unique élément comme un code client, une référence, un matricule...

    Il te suffit ensuite de faire une recherche popur savoir si la référence existe ou pas.

    Si elle existe tu connaîtras le numéro de ligne active, sinon le numéro de ligne active sera la première ligne vide à la fin de la plage de recherche.

    Pour rechercher la référence, utilise le code de la méthode Find

    Find, méthode

    Méthode Find telle qu'elle s'applique à l'objet Range.

    Cette méthode recherche une information spécifique dans une plage et renvoie un objet Range qui représente la première cellule où cette information apparaît. Cette méthode renvoie la valeur Nothing si l'information n'est pas trouvée. N'affecte ni la sélection ni la cellule active.

    Exemple
    Cet exemple montre comment rechercher si le texte contenu dans la variabe sTexteCherche existe dans les cellules de la plage A1:A500 dans la feuille de calcul Worksheet 1.
    Si le texte existe, la fonction retourne le N° de la ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Function LigneRechercher(sTexteCherche as string) As Integer
    Dim c as object
    With Worksheets(1).Range("a1:a500")
        Set c = .Find(sTexteCherche , lookin:=xlValues)
        If Not c Is Nothing Then
            LigneRechercher=c.row
        End If
    End With
    End Function

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 30
    Par défaut
    Bonjour Gégé 29

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nLignes=Range("A65536").End(xlUp).Offset(1, 0).row+1
    Le code que tu me donnes, je dois le mettre où dans mon code et qu'est ce que je dois supprimer?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Private Sub Commandvalider_Click()
    Sheets("clients").Activate
    Societeconverti = Application.WorksheetFunction.Proper(Me.clnomsociete.Text)
    Villeconverti = Application.WorksheetFunction.Proper(Me.ComboBoxville.Text)
    Contactconverti = Application.WorksheetFunction.Proper(Me.Combocontact.Text)
    Range("A65536").End(xlUp).Offset(1, 0).Value = clnomsociete.Value
    Range("B65536").End(xlUp).Offset(1, 0).Value = adresse.Value
    Range("C65536").End(xlUp).Offset(1, 0).Value = adress1.Value
    Range("D65536").End(xlUp).Offset(1, 0).Value = ComboBoxcp.Value
    Range("E65536").End(xlUp).Offset(1, 0).Value = ComboBoxville.Value
    Range("F65536").End(xlUp).Offset(1, 0).Value = Combotitre.Value
    Range("G65536").End(xlUp).Offset(1, 0).Value = Combocontact.Value
    Range("H65536").End(xlUp).Offset(1, 0).Value = TextBoxtel.Value
    Range("I65536").End(xlUp).Offset(1, 0).Value = TextBoxport.Value
    Range("J65536").End(xlUp).Offset(1, 0).Value = TextBoxfax.Value
    Range("K65536").End(xlUp).Offset(1, 0).Value = TextBoxmail.Value
    Range("L65536").End(xlUp).Offset(1, 0).Value = TextBoxsiteweb.Value
    Unload Me
    End Sub
    merci à toi en attendant

  7. #7
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 71

    Informations forums :
    Inscription : Février 2009
    Messages : 36
    Par défaut Version modifiée
    La modification ci-dessous devrait fonctionner.

    Comme je te l'ai dis précédemment, je suppose que "Ma référence" respecte les règles de l'unicité.
    Je suppose également que la référence est située colonne A et que la plage de données commence ligne 2.
    Je suppose également que le nombre d'enregistrements ne dépassera pas 32 767. Dans le cas contraire, il suffit de déclarer la variable iLigne en Long.

    Si ces supposition ne correspondent pas à ton projet, il te suffit d'adapter le code ci-dessous aux données réelles.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    Private Sub Commandvalider_Click()
     
    Dim iLigne as integer
     
    Sheets("clients").Activate
    Societeconverti = Application.WorksheetFunction.Proper(Me.clnomsociete.Text)
    Villeconverti = Application.WorksheetFunction.Proper(Me.ComboBoxville.Text)
    Contactconverti = Application.WorksheetFunction.Proper(Me.Combocontact.Text)
     
    iLigne = LigneRechercher("Ma référence")
     
    Range("A" & iLigne )= clnomsociete.Value
    Range("B" & iLigne )=  adresse.Value
    Range("C" & iLigne )= adress1.Value
    Range("D" & iLigne )= ComboBoxcp.Value
    Range("E" & iLigne )=  ComboBoxville.Value
    Range("F" & iLigne )=  Combotitre.Value
    Range("G" & iLigne )= Combocontact.Value
    Range("H" & iLigne )= TextBoxtel.Value
    Range("I" & iLigne )= TextBoxport.Value
    Range("J" & iLigne )= TextBoxfax.Value
    Range("K" & iLigne )=  TextBoxmail.Value
    Range("L" & iLigne )= TextBoxsiteweb.Value
    Unload Me
    End Sub
     
    Function LigneRechercher(sTexteCherche as string) As Integer
    Dim c as object
    With Worksheets(1).Range("a1:a65536")
        Set c = .Find(sTexteCherche , lookin:=xlValues)
        If Not c Is Nothing Then
            LigneRechercher=c.row
        Else
            LigneRechercher=Range("A65536").End(xlUp).Offset(1, 0).Row+1
        End If
    End With
    End Function

  8. #8
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour

    Comme le dit Gégé29, ton soucis est à la base une réflexion sur une base de données simple.
    Déjà en premier apparaît l’intérêt de se conformer aux préconisations du forum, à savoir mettre en balise son N° de version…

    En effet si tu es sous 2000 à 2003, tu as 256 colonnes sur 65536 lignes, d’où la réflexion suivante : je risque d’avoir plus de 256 clients ou plus de 256 items par clients ? (en 2007 ça change...)

    Généralement ça te conduira au cas 2 et à placer le nom de tes clients en colonne B par exemple la A étant réservée, comme l’explique Gégé au N° Id du client (unique).

    Ensuite, il est pratique de donner à toutes les en-têtes de tes colonnes un nom, ce qui te permettra de remplir ta cellule cible avec des choses du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    txtTelEntrep = Cells(MaRéférence.Row, Range("telent").Column)
     
    ‘ou en inverse 
     
    Cells(MaRéférence.Row, Range("telent").Column) = txtTelEntrep
    MaRéférence étant la cellule identifiante du client voulu et telent le Nom de l’en-tête de colonne Tél Entreprise de ma base.

    L’intérêt du nommage par rapport aux Offset est que c’est bien plus clair à relire et sans souci en cas d’insertion de nouvelles colonnes etc…

    Et de base quand tu écris les données de ton USF, tu écris tout, vides ou non chaque case ayant une destination personnelle.

    pour le N° ID unique, il suffit de faire un moteur (fonction) appliqué à chaque création client.

    cordialement,

    Didier

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 30
    Par défaut
    rebonjour gégé29,

    c'est impec le code que tu m'as donné, mais quand j'enregistre le client, ca se fait impec. Quand j'enregistre un autre client , dans mon tableau excel, il me saute une ligne à chaque fois.

    Par contre, pour modifier un client déjà rentré, ca fonctionne pas. Sachant que je cherche mon client à partir d'une combobox (clnomsociete). Le client est enregistré comme une nouvelle entrée.
    Je te joints des images de mes usf pour que tu te rendes mieux compte .
    Et comment faut-il que je fasse que lorsque je cible un client, toutes les données rentrées précédemment dans mon tableau apparaisse directement dans mon usf client.
    Merci de ton aide car je suis débutante en vba et j'essaie de me dépatouiller comme je peux

  10. #10
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 71

    Informations forums :
    Inscription : Février 2009
    Messages : 36
    Par défaut
    Tout réside sur l'identification du numéro de ligne.

    Si tu sélectionnes un client à partir d'une combobox, il faut donc récupérer le numéro d'index du combobox.
    ce numéro d'index devra être corrigé pour tenir compte du décalage ligne de la base de données.

    Procède en pas à pas en suivant l'évolution des variables.

    Idem pour le saut de ligne, le "+1" n'est peut-être opas indispensable dans tous les cas.

    Là encore, le mode Pas à pas te permettra de suivre et d'identifier les corrections à apporter.

    Procède en mode pas à pas en réalisant une modification sur un entregistrement dont tu as préalablement noté le numéro de ligne.

    Pour un nouvel enregistrement, note le numéro de ligne où il devra être enregistré, puis procède en mode pas à pas pour voir si le numéro de ligne définit par la macro correspond bien.

    Si tu n'est pas familière du mode pas à pas,

    Positionne un point d'arrêt (touche F9) sur la première ligne de code réalisée lors d'un enregistrement.

    Places les variables que tu veux suivre dans la fenêtre espion

    Exemple:
    Double clique sur la variable iLigne, puis clic droit et sélectionne "ajouter un espion".

    Appuies sur la touche F8 pour dérouler le code en mode pas à pas.

    Places les variables dans la fenêtre espion au fur et à mesure de l'avancement du code.

    Si le numéro de ligne élaboré ne corespond pas au numéro de ligne souhaité, tu pourras identifier la ligne qui pose problème et y apporter les corrections nécessaires.

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 30
    Par défaut
    rebonjour,
    je vais essayer de faire pas à pas. Par contre comment il faut faire par exemple si je veux taper le nom d'un client, mon userform se remplisse avec les données de mon tableau

    j'ai eu ce bout de code mais je sais pas comment m'en servir

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    dim recherche as range
    ...
    Set clnomsociete = Cells.Find(What:="clnomsociete", After:=ActiveCell, LookIn:=xlFormulas, _
            LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False)
    on error resume next
    adresse.text=clnomsociete.offset(0,1)
    adresse1.text=clnomsocite.offset(0,2)
    ...
     
    on error goto 0
    merci d'avance à toi

  12. #12
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 71

    Informations forums :
    Inscription : Février 2009
    Messages : 36
    Par défaut
    Le bout de code te permet de trouver le nom du client dans ta base de données puis d'afficher les données relatives à ce client.

    Ce code doit être placé dans le textbox du formulaire dans l'évènement Exit
    TextBox1_Exit

    Attention, si tu recherches le nom du client tu risques des erreurs dues à des homonimies, la recherche aboutira au premier client dont le nom correspondra au nom cherché.

    La recherche devrait plutôt s'effectuer sur la référence du client.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
     
    Private Sub txtRefClient_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    dim clnomsociete as range
     
    ' La recherche s'effectue dans la plage A2:A500 de la feuille Feuil1
    With range("Feuil1!A2:A500")
    Set clnomsociete = Cells.Find(What:=trim(txtRefClient.Text), LookIn:=xlValues, _
            LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False)
    on error resume next
    ' Le textBox txtNomreçoit la valeur contenue dans la colonne B de la ligne correspondant à la référence cherchée
    txtNom.text=clnomsociete.offset(0,1)
    txtAdresse.text=clnomsocite.offset(0,2)
     
    End With 
    on error goto 0
     
    End Sub
    La propriété Offset permet de récupére une valeur en donnant une position relative par rapport à la sélection.

    dans le cas présent, la référence client est dans la colonne A
    le nom est dans la colonne B
    L'adresse est dans la colonne C

    Le formulaire comporte trois txtBox: txtRefClient; txtNom; txtAdresse

    Pour plus d'information, regarde l'aide sur la propriété Offset

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 30
    Par défaut
    par contre (dans mon usf clients que j'ai joint dans le message d'avant) ma recherche se fait en fait par le combobox clnomsociete
    et le nom de la société est unique donc je fais la recherche avec le nom de la société pour que mes données (adresse, adress1, etc) apparaisse dans mes textbox associé au nom de la société. Est ce que le code reste identique ou faut-il que je fasse des modification?
    Car j'ai essayé avec le code que tu m'as donné, mais je n'ai rien qui se remplit automatiquement.

  14. #14
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 71

    Informations forums :
    Inscription : Février 2009
    Messages : 36
    Par défaut
    Si la recherche s'effectue à partir d'un combobox, il vaut mieux utiliser l'évènement "Change"

    Le code ne devrait pas changer, mais il faut néanmoins l'adapter à l'usf.

    Le code donné plus haut est écrit en aveugle, Il faut identifier la feuille de calcul et la plage de recherche, ainsi que les noms des textBox utilisés

    Le code fournit plus une méthode et les fonctions à utiliser qu'un produit finis.

    Pour celà, il faudrait disposer de l'usf et de la feuille de calcul de recherche.

    L'utilisation du mode pas à pas et la fenêtre espion devraient t'aider à adapter ce code. Les modifications devraient être mineures.

  15. #15
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 30
    Par défaut
    rebonjour gégé29,

    je n'arrive pas à faire marcher ce code.

  16. #16
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 71

    Informations forums :
    Inscription : Février 2009
    Messages : 36
    Par défaut
    Sans le source je ne peux guère t'aider.

    Peux-tu envoyer un modèle avec la feuille de données?

    Je créerai un formulaire et je te renverrai le tout

  17. #17
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 71

    Informations forums :
    Inscription : Février 2009
    Messages : 36
    Par défaut
    Je me suis lancé dans une petite démo.

    J'ai du adapter le code.

    attention aux noms identiques, la variable résultat de la recherche comportait le même nom que le combobox.

    Je te joins un petit fichier qui te montre comment afficher les données d'un enregistrement dans un usf
    Fichiers attachés Fichiers attachés

  18. #18
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 30
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    Private Sub clnomsociete_Change()
    Dim c As Object ' Variable résultat de la recherche
    Dim iLignes As Integer
        ' Recherche du nombre de ligne de la plage de données
        iLignes = Application.WorksheetFunction.CountA(Range("Feuil1!A:A"))
     
        ' La recherche s'effectue dans la plage A2:Axx de la feuille Feuil1
        With Range("Feuil1!A2:A" & iLignes)
            Set c = .Find(What:=Trim(clnomsociete), LookIn:=xlValues, _
                    LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
                    MatchCase:=False, SearchFormat:=False)
            On Error Resume Next
            ' Le textBox txtNomreçoit la valeur contenue dans la colonne B de la ligne correspondant à la référence cherchée
            Me.adresse = c.Offset(0, 1)
            Me.Adresse1 = c.Offset(0, 2)
            Me.ComboBoxcp = c.Offset(0, 3)
            Me.ComboBoxville = c.Offset(0, 4)
     
        End With
     
     
    End Sub
    Private Sub UserForm_Initialize()
    Sheets("clients").Activate
    For i = 2 To 1000
    Me.clnomsociete.AddItem Range("A" & i).Value
    Next
    Sheets("liste de choix").Activate
    For i = 1 To 42008
    Me.ComboBoxcp.AddItem Range("B" & i).Value
    Me.ComboBoxville.AddItem Range("A" & i).Value
    Next
    For i = 1 To 3
    Me.cltypetravail.AddItem Range("D" & i).Value
    Next
    For i = 1 To 9
    Me.clviaentreprise.AddItem Range("J" & i).Value
    Next
    For i = 1 To 2
    Me.Combotitre.AddItem Range("F" & i).Value
    Next
    For i = 1 To 9
    Me.ComboBox1.AddItem Range("H" & i).Value
    Next
    For i = 1 To 2
    Me.ComboBox2.AddItem Range("I" & i).Value
    Next
    'Userform en plein écran
    Me.Width = ScreenWidth * PointsPerPixel - 3
    Me.Height = ScreenHeight * PointsPerPixel
    'Rapport d'agrandissement de la form/taille écran en points
    Dim RW As Single, RH As Single
    RW = ScreenWidth * PointsPerPixel / Me.Width
    RH = ScreenHeight * PointsPerPixel / Me.Height
    With FrmClient
    .StartUpPosition = 3
    .Width = Application.Width
    .Height = Application.Height
    .Left = 0
    .Top = 0
    End With
    Dim iLignes As Integer
        iLignes = Application.WorksheetFunction.CountA(Range("Feuil1!A:A"))
        Me.clnomsociete.RowSource = "=Feuil1!$A$2:$A" & iLignes
    End Sub
    Private Sub clnomsociete_AfterUpdate()
    If ModifClient = False Then Exit Sub
    Dim NoRetModif As Boolean
    NoRetModif = False
    'traiter la modif nom client
    ModClient SélN, txtpC.Text, cmbnC.Text, NoRetModif
    'on actualise la variable donnant le nom en cours ou on remet le nom de départ si pas de retour
    If NoRetModif = True Then cmbnC.Text = SélN Else SélN = cmbnC.Text
    End Sub
    Private Sub ComboBoxcp_Change()
    ComboBoxville.ListIndex = ComboBoxcp.ListIndex
    ComboBoxville.Value = ComboBoxville.List(ComboBoxville.ListIndex)
    End Sub
    Private Sub ComboBoxville_Change()
    ComboBoxcp.ListIndex = ComboBoxville.ListIndex
    ComboBoxcp.Value = ComboBoxcp.List(ComboBoxcp.ListIndex)
    End Sub
    Private Sub CommandButton1_Click() 'spécificités
    Me.Hide
    Op = "spécificités"
    frmspecific.Show
    End Sub
    Private Sub CommandButton2_Click()
    Me.Hide
    Op = " retour menu"
    frmmenu.Show
    End Sub
    Private Sub CommandButton3_Click()
    'EntDim d As DonnéesClient, m As VbMsgBoxResult, i As Integer
    'Entrée client
    d.Nom = clnomsociete.Text
    d.Ville = txtpC.Text
     
    If d.Nom = "" Then
        If Op = "Saisie" Then
            MsgBox "Il faut rentrer le nom du client!", vbCritical, "Entrée non valable": cmbnC.SetFocus
        Else
            MsgBox "Sélectionner un client!", vbCritical, "Entrée non valable": cmbnC.SetFocus
            ModifClient = False     'au cas où...
        End If
        Exit Sub
    End If
    If d.Ville = "" And d.Nom <> "" Then
        MsgBox "Il faut rentrer une ville pour le client!", vbExclamation, "Manque Ville"
        txtpC.SetFocus
        ModifClient = False         'au cas où...
        Exit Sub
    End If
     
    If cmbnC.Text <> "" And txtpC.Text <> "" Then d = fd(cmbnC.Text, txtpC.Text) 'indique si client existe
     
    d.Nom = Trim(cmbnC.Text)    'ajout 9F_5 pour sup blancs g et d du nom
    d.Prénom = Trim(txtpC.Text) 'ajout 9F_5 pour sup blancs g et d du prénom
    d.ad = txtaD.Text
    d.Ville = txtVi.Text
    d.Code = txtCo.Text
    d.Pays = txtPays.Text
    d.Tél = txtTél.Text
    d.Port = txtPort.Text
    d.eMail = txtMail.Text
     
    EntréeClient d, CelNC
     
    cmbnC.RowSource = "ChampNPC" 'on réactualise la liste clients au cas où
    'Entrée Travail
    Dim dW As DonnéesW
    m = 0
    If Op = "Saisie" Then
        If txtType.Text = "" And cmbW.ListCount = 0 Then
            m = MsgBox("Vous n'avez pas rentré de travail pour ce client" & vbCr & _
            "Voulez-vous en rentrer un maintenant?", vbExclamation + vbYesNo, "PAS DE TYPE DE TRAVAIL")
            If m = vbYes Then Exit Sub Else GoTo Fin
        End If
        If txtNumC = "" Then
            MsgBox "Il faut entrer au moins un n° Rf1!", vbExclamation, "Entrée incomplète"
            txtNumC.SetFocus
            Exit Sub
        End If
        If txtPrix = "" Then m = MsgBox("Confirmez-vous l'absence de prix?", vbYesNo, "PAS DE PRIX!")
        If m = vbNo Then txtPrix.SetFocus: Exit Sub
    Else
        If ModifClient = True Then
            MsgBox "Le nom client a été modifié", vbInformation, "": ModifClient = False: Exit Sub
        End If
    End If
     
    dW.TypeW = NomW
    dW.DiversW = txtDiv
     
    dW.NumC = txtNumCAn & txtNumC
    If txtNumP <> "" Then dW.NumP = txtNumPAn & txtNumP Else dW.NumP = ""
    If txtNumB <> "" Then dW.NumB = txtNumBAn & txtNumB Else dW.NumB = ""
    If txtPrix <> "" Then dW.PrixTTC = txtPrix Else dW.PrixTTC = 0
    If txtTVA <> "" Then dW.TVA = txtTVA Else dW.TVA = 0
    If txtAcompte <> "" Then dW.Acompte = txtAcompte Else dW.Acompte = 0
    dW.DateW = txtDate
    If optO Then dW.Cmd = "oui" Else dW.Cmd = "non"
    EntréeTravail d, dW
    Exit Sub
    Fin:
    MsgBox "Saisie effectuée sans travail affecté!", vbExclamation, ""
    End Sub
     
    Private Sub CommandButton4_Click() 'bons
    Me.Hide
    Op = "bons"
    frmbons.Show
    End Sub
     
    Private Sub Commandvalider_Click()
    Dim iLigne As Integer
    Sheets("clients").Activate
     
    Societeconverti = Application.WorksheetFunction.Proper(Me.clnomsociete.Text)
    Villeconverti = Application.WorksheetFunction.Proper(Me.ComboBoxville.Text)
    Contactconverti = Application.WorksheetFunction.Proper(Me.Combocontact.Text)
     
    iLigne = LigneRechercher("Ma référence")
     
    Range("A" & iLigne) = clnomsociete.Value
    Range("B" & iLigne) = adresse.Value
    Range("C" & iLigne) = adress1.Value
    Range("D" & iLigne) = ComboBoxcp.Value
    Range("E" & iLigne) = ComboBoxville.Value
    Range("F" & iLigne) = Combotitre.Value
    Range("G" & iLigne) = Combocontact.Value
    Range("H" & iLigne) = TextBoxtel.Value
    Range("I" & iLigne) = TextBoxport.Value
    Range("J" & iLigne) = TextBoxfax.Value
    Range("K" & iLigne) = TextBoxmail.Value
    Range("L" & iLigne) = TextBoxsiteweb.Value
    Unload Me
    End Sub
     
    Function LigneRechercher(sTexteCherche As String) As Integer
    Dim c As Object
    With Worksheets(1).Range("a1:a65536")
        Set c = .Find(sTexteCherche, LookIn:=xlValues)
        If Not c Is Nothing Then
            LigneRechercher = c.Row
        Else
            LigneRechercher = Range("A65536").End(xlUp).Offset(1, 0).Row
        End If
    End With
    End Function
    C'est les codes de mon usf clients


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub CommandButton2_Click()
    Me.Hide
    FrmClient.Show
    End Sub
    c'est le code que j'ai sur un menu général et quand je clique dessus , c'est mon usf clients qui s'ouvre, mais depuis que j'ai rentré ton code mon usf client ne s'ouvre plus
    et mes images d'usf, tu les as plus haut dans mes messages. Je ne peux t'envoyer mon fichier il est trop volumineux meme en zippant.

    Vu que je ne peux pas ouvrir l'usf client j'ai pas pu tester ton code si il marchait

  19. #19
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 71

    Informations forums :
    Inscription : Février 2009
    Messages : 36
    Par défaut
    Le code d'ouverture de ton usf Clients ne figure pas dans ce code.

    Pour l'ouvrir, procède comme sur le fichier transmis, crées un bouton sur une feuille de calcul puis mets-y le code d'ouverture du formulaire:

    avec des morceaux de code, il n'est pas possible de résoudre l'ensemble du problème, mais seulement de te donner des clés qui te permettront de continuer.

    encore une fois, le mode pas à pas et la patience sont le secret de la réussite

  20. #20
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 30
    Par défaut
    Bonjour gégé29,
    J'ai un problème j'ai mon usf "menu général" où j'ai plusieurs commonbutton dont 1 clients, 1 bons.
    En cliquant sur mon bouton clients, ça devrait me renvoyer à mon usf"clients"
    J'ai fait les changements sur mon usf"clients"avec le code que tu m'as donné. Avant cela mon bouton"clients de mon usf"menu général" marchait (ça appelé mon usf"clients)depuis que j'ai rentré le code dans mon usf"clients"ça ne marche plus Je te joints deux images de mes usf et de mes codes 1er code usf"menu général" et 2 ème code usf"clients"
    Sur le 1er code le commande button qui commande mon usf"clients" c'est le command button2_click

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    Option Explicit
     
    Private Declare Function FindWindowA& Lib "User32" _
        (ByVal lpClassName$, ByVal lpWindowName$)
    Private Declare Function EnableWindow& Lib "User32" _
        (ByVal hWnd&, ByVal bEnable&)
    Private Declare Function GetWindowLongA& Lib "User32" _
        (ByVal hWnd&, ByVal nIndex&)
    Private Declare Function SetWindowLongA& Lib "User32" _
        (ByVal hWnd&, ByVal nIndex&, ByVal dwNewLong&)
     
     
    Private Sub CommandButton2_Click()
    Me.Hide
    FrmClient.Show
    End Sub
     
    Private Sub CommandButton9_Click()
     
    Sheets("bons d'enlèvement").Activate
    Me.Hide
    End Sub
     
    Private Sub UserForm_Activate()
     
    With frmmenu
    .StartUpPosition = 3
    .Width = Application.Width
    .Height = Application.Height
    .Left = 0
    .Top = 0
    End With
      Dim hWnd As Long
     
        hWnd = FindWindowA("XLMAIN", Application.Caption)
        EnableWindow hWnd, 1
     
    End Sub
     
    Private Sub UserForm_Initialize()
     Dim hWnd As Long
     
        hWnd = FindWindowA(vbNullString, Me.Caption)
        SetWindowLongA hWnd, -16, GetWindowLongA(hWnd, -16) Or &H20000
     
    End Sub
    c'est le buttonclick "clients"de mon usf"menu général"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    Private Sub clnomsociete_Change()
    Dim c As Object ' Variable résultat de la recherche
    Dim iLignes As Integer
        ' Recherche du nombre de ligne de la plage de données
        iLignes = Application.WorksheetFunction.CountA(Range("Feuil1!A:A"))
     
        ' La recherche s'effectue dans la plage A2:Axx de la feuille Feuil1
        With Range("Feuil1!A2:A" & iLignes)
            Set c = .Find(What:=Trim(clnomsociete), LookIn:=xlValues, _
                    LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
                    MatchCase:=False, SearchFormat:=False)
            On Error Resume Next
            ' Le textBox txtNomreçoit la valeur contenue dans la colonne B de la ligne correspondant à la référence cherchée
            Me.adresse = c.Offset(0, 1)
            Me.Adresse1 = c.Offset(0, 2)
            Me.ComboBoxcp = c.Offset(0, 3)
            Me.ComboBoxville = c.Offset(0, 4)
     
        End With
     
     
    End Sub
    Private Sub UserForm_Initialize()
    Sheets("clients").Activate
    For i = 2 To 1000
    Me.clnomsociete.AddItem Range("A" & i).Value
    Next
    Sheets("liste de choix").Activate
    For i = 1 To 42008
    Me.ComboBoxcp.AddItem Range("B" & i).Value
    Me.ComboBoxville.AddItem Range("A" & i).Value
    Next
    For i = 1 To 3
    Me.cltypetravail.AddItem Range("D" & i).Value
    Next
    For i = 1 To 9
    Me.clviaentreprise.AddItem Range("J" & i).Value
    Next
    For i = 1 To 2
    Me.Combotitre.AddItem Range("F" & i).Value
    Next
    For i = 1 To 9
    Me.ComboBox1.AddItem Range("H" & i).Value
    Next
    For i = 1 To 2
    Me.ComboBox2.AddItem Range("I" & i).Value
    Next
    'Userform en plein écran
    Me.Width = ScreenWidth * PointsPerPixel - 3
    Me.Height = ScreenHeight * PointsPerPixel
    'Rapport d'agrandissement de la form/taille écran en points
    Dim RW As Single, RH As Single
    RW = ScreenWidth * PointsPerPixel / Me.Width
    RH = ScreenHeight * PointsPerPixel / Me.Height
    With FrmClient
    .StartUpPosition = 3
    .Width = Application.Width
    .Height = Application.Height
    .Left = 0
    .Top = 0
    End With
     
    Dim iLignes As Integer
        iLignes = Application.WorksheetFunction.CountA(Range("Feuil1!A:A"))
        Me.clnomsociete.RowSource = "=Feuil1!$A$2:$A" & iLignes
    End Sub
     
    Private Sub ComboBoxcp_Change()
    ComboBoxville.ListIndex = ComboBoxcp.ListIndex
    ComboBoxville.Value = ComboBoxville.List(ComboBoxville.ListIndex)
    End Sub
    Private Sub ComboBoxville_Change()
    ComboBoxcp.ListIndex = ComboBoxville.ListIndex
    ComboBoxcp.Value = ComboBoxcp.List(ComboBoxcp.ListIndex)
    End Sub
    Private Sub CommandButton1_Click() 'spécificités
    Me.Hide
    Op = "spécificités"
    frmspecific.Show
    End Sub
    Private Sub CommandButton2_Click()
    Me.Hide
    Op = " retour menu"
    frmmenu.Show
    End Sub
    Private Sub CommandButton3_Click()
    'EntDim d As DonnéesClient, m As VbMsgBoxResult, i As Integer
    'Entrée client
    d.Nom = clnomsociete.Text
    d.Ville = txtpC.Text
     
    If d.Nom = "" Then
        If Op = "Saisie" Then
            MsgBox "Il faut rentrer le nom du client!", vbCritical, "Entrée non valable": cmbnC.SetFocus
        Else
            MsgBox "Sélectionner un client!", vbCritical, "Entrée non valable": cmbnC.SetFocus
            ModifClient = False     'au cas où...
        End If
        Exit Sub
    End If
    If d.Ville = "" And d.Nom <> "" Then
        MsgBox "Il faut rentrer une ville pour le client!", vbExclamation, "Manque Ville"
        txtpC.SetFocus
        ModifClient = False         'au cas où...
        Exit Sub
    End If
     
    If cmbnC.Text <> "" And txtpC.Text <> "" Then d = fd(cmbnC.Text, txtpC.Text) 'indique si client existe
     
    d.Nom = Trim(cmbnC.Text)    'ajout 9F_5 pour sup blancs g et d du nom
    d.Prénom = Trim(txtpC.Text) 'ajout 9F_5 pour sup blancs g et d du prénom
    d.ad = txtaD.Text
    d.Ville = txtVi.Text
    d.Code = txtCo.Text
    d.Pays = txtPays.Text
    d.Tél = txtTél.Text
    d.Port = txtPort.Text
    d.eMail = txtMail.Text
     
    EntréeClient d, CelNC
     
    cmbnC.RowSource = "ChampNPC" 'on réactualise la liste clients au cas où
    'Entrée Travail
    Dim dW As DonnéesW
    m = 0
    If Op = "Saisie" Then
        If txtType.Text = "" And cmbW.ListCount = 0 Then
            m = MsgBox("Vous n'avez pas rentré de travail pour ce client" & vbCr & _
            "Voulez-vous en rentrer un maintenant?", vbExclamation + vbYesNo, "PAS DE TYPE DE TRAVAIL")
            If m = vbYes Then Exit Sub Else GoTo Fin
        End If
        If txtNumC = "" Then
            MsgBox "Il faut entrer au moins un n° Rf1!", vbExclamation, "Entrée incomplète"
            txtNumC.SetFocus
            Exit Sub
        End If
        If txtPrix = "" Then m = MsgBox("Confirmez-vous l'absence de prix?", vbYesNo, "PAS DE PRIX!")
        If m = vbNo Then txtPrix.SetFocus: Exit Sub
    Else
        If ModifClient = True Then
            MsgBox "Le nom client a été modifié", vbInformation, "": ModifClient = False: Exit Sub
        End If
    End If
     
    dW.TypeW = NomW
    dW.DiversW = txtDiv
     
    dW.NumC = txtNumCAn & txtNumC
    If txtNumP <> "" Then dW.NumP = txtNumPAn & txtNumP Else dW.NumP = ""
    If txtNumB <> "" Then dW.NumB = txtNumBAn & txtNumB Else dW.NumB = ""
    If txtPrix <> "" Then dW.PrixTTC = txtPrix Else dW.PrixTTC = 0
    If txtTVA <> "" Then dW.TVA = txtTVA Else dW.TVA = 0
    If txtAcompte <> "" Then dW.Acompte = txtAcompte Else dW.Acompte = 0
    dW.DateW = txtDate
    If optO Then dW.Cmd = "oui" Else dW.Cmd = "non"
    EntréeTravail d, dW
    Exit Sub
    Fin:
    MsgBox "Saisie effectuée sans travail affecté!", vbExclamation, ""
    End Sub
     
    Private Sub CommandButton4_Click() 'bons
    Me.Hide
    Op = "bons"
    frmbons.Show
    End Sub
     
    Private Sub Commandvalider_Click()
    Dim iLigne As Integer
    Sheets("clients").Activate
     
    Societeconverti = Application.WorksheetFunction.Proper(Me.clnomsociete.Text)
    Villeconverti = Application.WorksheetFunction.Proper(Me.ComboBoxville.Text)
    Contactconverti = Application.WorksheetFunction.Proper(Me.Combocontact.Text)
     
    iLigne = LigneRechercher("Ma référence")
     
    Range("A" & iLigne) = clnomsociete.Value
    Range("B" & iLigne) = adresse.Value
    Range("C" & iLigne) = adress1.Value
    Range("D" & iLigne) = ComboBoxcp.Value
    Range("E" & iLigne) = ComboBoxville.Value
    Range("F" & iLigne) = Combotitre.Value
    Range("G" & iLigne) = Combocontact.Value
    Range("H" & iLigne) = TextBoxtel.Value
    Range("I" & iLigne) = TextBoxport.Value
    Range("J" & iLigne) = TextBoxfax.Value
    Range("K" & iLigne) = TextBoxmail.Value
    Range("L" & iLigne) = TextBoxsiteweb.Value
    Unload Me
    End Sub
    c'est le code de mon usf"clients"

    est ce qu'il y a quelque chose que j'ai mis en trop pour que mon usf clients ne s'ouvre plus à partir de mon menu général?
    Merci à toi

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [XL-2003] Saisie de données automatique dans une cellule
    Par yfchauer dans le forum Excel
    Réponses: 3
    Dernier message: 02/01/2013, 06h24
  2. [XL-2010] Filtre automatique dans userform
    Par duplaly dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 20/07/2011, 00h42
  3. [AC-2007] entrer des données automatiquement dans table
    Par JAG747 dans le forum Modélisation
    Réponses: 12
    Dernier message: 26/12/2010, 18h27
  4. Réponses: 3
    Dernier message: 30/09/2010, 13h06
  5. [Cookies] insertion de données automatique dans formulaire
    Par chouchouboy dans le forum Langage
    Réponses: 8
    Dernier message: 09/06/2006, 11h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo