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 :

Création formulaire gestion d'information


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Femme Profil pro
    Ressources humaines
    Inscrit en
    Juillet 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Alimentation

    Informations forums :
    Inscription : Juillet 2014
    Messages : 5
    Par défaut Création formulaire gestion d'information
    Bonjour,

    Dans le cadre de mon travail, je suis en train de créée un formulaire personnalisé.
    Ma base d'information contient 71 colonnes donnant pour une référence l'ensemble des informations collectés.
    ex:
    Colonne 1: Référence
    Colonne 2 : Conformité France
    Colonne 3 : Date de reception de l'information
    Colonne 4: Conformité US
    Colonne 5: Date
    etc...

    Pour chaqu'une des informations il a une colonne avec la date de reception de l'information.
    J'ai créer un formulaire simple permetant d'ajouter de modifier les informations.

    Il y a 2 choses que je n'arrive pas a faire:

    - J'aimerai lorsque je selectionne une référence dans mon formulaire que les informations qui sont deja présente dans mon tableau s'incremente dans mon formulaire. (dans un cadre de consultation)
    -J'aimerai également lorsque la date associée à une information à plus d'un an, que cette information apparaisse en rouge.

    Est-ce que vous pourriez m'aider?

    Le code est le 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
    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
    'Pour le formulaire
    Private Sub UserForm_Initialize()
    Dim J As Long
        Dim I As Integer
            Set Ws = Sheets("Baseinfo") 'Correspond au nom de votre onglet dans le fichier Excel
        With Me.ComboBox1
            For J = 2 To Ws.Range("A" & Rows.Count).End(xlUp).Row
                .AddItem Ws.Range("A" & J)
            Next J
        End With
        For I = 1 To 71
            Me.Controls("TextBox" & I).Visible = True
        Next I
    End Sub
     
    'Pour le bouton Nouveau contact
    Private Sub CommandButton1_Click()
        Dim L As Integer
        If MsgBox(" Confirmation de l'ajout d'une nouvelle référence ? ", vbYesNo, " Demande de confirmation d’ajout ") = vbYes Then
            L = Sheets("Baseinfo").Range("a65536").End(xlUp).Row + 1 'Pour placer le nouvel enregistrement à la première ligne de tableau non vide
            Range("A" & L).Value = ComboBox1
            Range("B" & L).Value = TextBox1
            Range("C" & L).Value = TextBox2
            Range("D" & L).Value = TextBox3
            Range("E" & L).Value = TextBox4
            Range("F" & L).Value = TextBox5
            Range("G" & L).Value = TextBox6
            Range("H" & L).Value = TextBox7
            Range("I" & L).Value = TextBox8
            Range("J" & L).Value = TextBox9
            Range("K" & L).Value = TextBox10
            Range("L" & L).Value = TextBox11
            Range("M" & L).Value = TextBox12
            Range("N" & L).Value = TextBox13
            Range("O" & L).Value = TextBox14
            Range("P" & L).Value = TextBox15
            Range("R" & L).Value = TextBox17
            Range("S" & L).Value = TextBox18
            Range("T" & L).Value = TextBox19
            Range("U" & L).Value = TextBox20
            Range("V" & L).Value = TextBox21
            Range("W" & L).Value = TextBox22
        End If
    End Sub
     
     
    'Pour le bouton Modifier
    Private Sub CommandButton2_Click()
        Dim Ligne As Long
        Dim I As Integer
        If MsgBox("Confirmez-vous la modification de la référence ?", vbYesNo, "Demande de confirmation de modification") = vbYes Then
            If Me.ComboBox1.ListIndex = -1 Then Exit Sub
            Ligne = Me.ComboBox1.ListIndex + 2
            Ws.Cells(Ligne, "B") = TextBox1
            For I = 1 To 71
                If Me.Controls("TextBox" & I).Visible = True Then
                    Ws.Cells(Ligne, I + 2) = Me.Controls("TextBox" & I)
                End If
            Next I
        End If
    End Sub
     
    'Pour le bouton Quitter
    Private Sub CommandButton3_Click()
        Unload Me
    End Sub
    Merci de votre aide.

  2. #2
    Invité
    Invité(e)
    Par défaut Bonjour,
    regarde le fichier joint!
    Fichiers attachés Fichiers attachés

  3. #3
    Membre à l'essai
    Femme Profil pro
    Ressources humaines
    Inscrit en
    Juillet 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Alimentation

    Informations forums :
    Inscription : Juillet 2014
    Messages : 5
    Par défaut
    Merci de votre retour.

    Quand je lance les modifications j'ai un message d'erreur : erreur d'execution 91

    Le texte VBA ne présent que ce texte:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Workbook_Open()
    UserForm1.Show
    End Sub
    Je ne vois pas trop où vous voulez en venir.

    Ci-joint mon ficher:

    Conformité reglementaire.zip

  4. #4
    Invité
    Invité(e)
    Par défaut
    quand le débogage apparaît il faut faire F8 pour aller à l'erreur.
    je pens que ça vient de la version d'Excel car je l'ai testé avant de poser.
    dans vba touche [Alt] + [F11]
    dans le menu Outils-> Référence décocher les références manquante.

  5. #5
    Membre à l'essai
    Femme Profil pro
    Ressources humaines
    Inscrit en
    Juillet 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Alimentation

    Informations forums :
    Inscription : Juillet 2014
    Messages : 5
    Par défaut
    En fait non ca ne marche pas si je change de ligne dans la combox 1 ca n'actualise pas les infos du tableau.


    Et est-ce que vous auriez un conseil pour que les date de plus d'un an s'affiche en rouge?

  6. #6
    Invité
    Invité(e)
    Par défaut
    même quand tu click sur modifier?
    Citation Envoyé par Lalloux87 Voir le message
    En fait non ca ne marche pas si je change de ligne dans la combox 1 ca n'actualise pas les infos du tableau.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If DateDiff("m", [a1], Date) > 12 Then [a1].Font.Color = 255 Else [a1].Font.ColorIndex = xlAutomatic
    Citation Envoyé par Lalloux87 Voir le message
    Et est-ce que vous auriez un conseil pour que les date de plus d'un an s'affiche en rouge?

  7. #7
    Membre à l'essai
    Femme Profil pro
    Ressources humaines
    Inscrit en
    Juillet 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Alimentation

    Informations forums :
    Inscription : Juillet 2014
    Messages : 5
    Par défaut
    Quand l'userform s'ouvre il a les infos de la combox 1 (A).
    Les deux premières textes box ont bien les infos (a, a)

    Par contre si je change la combobox pour la lettre B les infos des textes box restent celle de la ligne A.

    Si je me met sur la lettre B que je change les infos ca me change les info de la ligne A et pas de la ligne B.

  8. #8
    Invité
    Invité(e)
    Par défaut
    tu veux que toutes les ligne est la même valeur.
    car mon code affect que la linge sélectionné par la barre de défilement situé a gauche du formulaire. le bouton[*] lui permet de faire un ajout.

  9. #9
    Membre à l'essai
    Femme Profil pro
    Ressources humaines
    Inscrit en
    Juillet 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Alimentation

    Informations forums :
    Inscription : Juillet 2014
    Messages : 5
    Par défaut
    Oui, en fait j'avais mis mon document en pièce jointe.

    J'avais reussi à trouvé un code sans la barre de defilement, pour pouvoir aller chercher directement ma référence dans la combox box1.

    En selectionannt une référence de la colonne 1 via la combobox 1, j'aimerai que les infos du tableau s'incrementent directement dans mon formulaire.

  10. #10
    Invité
    Invité(e)
    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
    Private Sub ComboBox1_Change()
    Dim Ligne As Long
    Dim I As Integer
    If Me.ComboBox1.ListIndex = -1 Then Exit Sub
    Ligne = Me.ComboBox1.ListIndex + 2
    Ws.Cells(Ligne, "B") = TextBox1
    For I = 1 To 71
        If Me.Controls("TextBox" & I).Visible = True Then
            Me.Controls("TextBox" & I) = Ws.Cells(Ligne, I + 2)
        End If
    Next I
     
    End Sub
    Dernière modification par AlainTech ; 20/07/2014 à 16h04. Motif: Suppression de la citation inutile

Discussions similaires

  1. [AC-2007] Création Formulaire - Gestion de courses hippiques
    Par jean33000 dans le forum IHM
    Réponses: 8
    Dernier message: 26/04/2010, 20h42
  2. [AC-2002] pb lors création formulaire pour gestion photo
    Par devvba dans le forum Modélisation
    Réponses: 4
    Dernier message: 14/04/2010, 16h38
  3. [Formulaire] Gestion erreur saisie d'une requête
    Par b_steph_2 dans le forum IHM
    Réponses: 6
    Dernier message: 05/01/2006, 16h40
  4. Création et gestion d'un curseur en PL/SQL
    Par Petit_Jardin dans le forum PL/SQL
    Réponses: 2
    Dernier message: 23/11/2005, 14h27
  5. [formulaire] passage d'information
    Par mr-casimir dans le forum IHM
    Réponses: 2
    Dernier message: 19/10/2004, 13h59

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