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 :

Modifier une base de données via une listbox et rafraichir la lisbox


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    instituteur
    Inscrit en
    Juillet 2018
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : instituteur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2018
    Messages : 617
    Par défaut Modifier une base de données via une listbox et rafraichir la lisbox
    bjr forum.
    j'ai écris ce code qui me permet de modifier ma BD via une listbox.
    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
    'permet la modification des anciennes données des élèves
    '************************************************************
    Private Sub Bt_modif1_Click()
    On Error Resume Next
    Dim wb As Workbook
    Dim i As Integer
     On Error Resume Next
        Application.ScreenUpdating = False
     
            With Sheets("source")
     
                If T_prenoms1 <> "" Or T_sexe1 <> "" Or T_extrait1 <> "" Then
        If MsgBox(" Voulez-vous modifier les reférences de " & T_prenoms1 & "?", vbQuestion + vbYesNo, "MESSAGE DE CONFIRMATION") _
        <> vbYes Then Exit Sub
        i = ListBox2.ListIndex + 2
            .Range("b" & i) = Me.T_prenoms1
            .Range("d" & i) = Me.T_sexe1
            .Range("c" & i) = Me.T_niveauC
            .Range("e" & i) = Me.T_ecoleC
            .Range("f" & i) = Me.T_nationalite1
            .Range("g" & i) = Me.T_date1
            .Range("h" & i) = Me.T_lieu1
            .Range("i" & i) = Me.T_localite1
            .Range("j" & i) = Me.T_extrait1
            .Range("k" & i) = Me.T_lieu_etabli1
            .Range("l" & i) = Me.T_date_etabli1
            .Range("m" & i) = Me.T_sp1
            .Range("n" & i) = Me.T_niveauA
            .Range("o" & i) = Me.T_ecoleA
            .Range("p" & i) = Me.T_dfaA
            .Range("q" & i) = Me.T_niveauD
            .Range("r" & i) = Me.T_ecoleD
            .Range("s" & i) = Me.T_dfaB
            .Range("ac" & i) = Me.T_dossier_extrait
            .Hyperlinks.Add Anchor:=Range("ac" & i), Address:=T_dossier_extrait
            .Range("ab" & i) = Me.T_photo2
            .Range("t" & i) = Me.T_dfaC
            .Range("u" & i) = Me.T_pere1
            .Range("v" & i) = Me.T_metier
            .Range("w" & i) = Me.T_mere1
            .Range("x" & i) = Me.T_metier1
            .Range("y" & i) = Me.T_contact0
            .Range("a" & i) = Me.T_matricule
     
     
     
          MsgBox " Les références de l'élève " & T_prenoms1 & " ont été mise à jour.Vous pouvez continuer les modifications", vbInformation
          End If
      End With
     
       'ListBox2.Clear
     
        Label311.Caption = ""
            Me.Image4.Picture = Nothing
            T_prenoms1 = ""
            T_sexe1 = ""
            T_date1 = ""
            T_lieu1 = ""
            T_nationalite1 = ""
            T_localite1 = ""
            T_extrait1 = ""
            T_date_etabli1 = ""
            T_lieu_etabli1 = ""
            T_sp1 = ""
            T_niveauA = ""
            T_ecoleA = ""
            T_dfaA = ""
            T_niveauD = ""
            T_ecoleD = ""
            T_dfaB = ""
            T_niveauC = ""
            T_ecoleC = ""
            T_dfaC = ""
            T_metier = ""
            T_metier1 = ""
            T_pere1 = ""
            T_mere1 = ""
            T_contact0 = ""
            t_dossier_exrait = ""
            T_photo2 = ""
            T_matricule = ""
            Label74 = ""
     
            'rafraichir le tableau
     
                      TBlBD = [tab_1].Value 
      Me.ListBox2.List = TBlBD
         Me.ListBox2.ColumnCount = [tab_1].Columns.Count
            Me.ListBox2.ColumnWidths = "80;150;100;100;100;100;100;100;100;100;100;100;100;100;100;100;100;100;80;100;150;100;150;100;85;85;85;100"
     
     
     
    End Sub
    au debut ça fonctionnait mais apres plusieurs saisies, la modification ne s'opère plus. je n'arrive pas à comprendre le dysfonctionnement. quelqu'un pourrait m'expliquer le pourquoi?
    aussi est_il que je souhaiterais savoir comment rafraichir la listbox apres une modif car moi je suis obligé de passer par la réinitialisation avec le code source comme dans CE
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        TBlBD = [tab_1].Value 
      Me.ListBox2.List = TBlBD
         Me.ListBox2.ColumnCount = [tab_1].Columns.Count
            Me.ListBox2.ColumnWidths = "80;150;100;100;100;100;100;100;100;100;100;100;100;100;100;100;100;100;80;100;150;100;150;100;85;85;85;100"
    MERCI POUR VOTRE AIDE

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Niamké 19 Voir le message
    Bonjour,

    Je n'ai pas regardé ton code. Tu pourrais regarder les solutions présentes dans cette discussion : creation-fomulaire

  3. #3
    Membre éclairé
    Homme Profil pro
    instituteur
    Inscrit en
    Juillet 2018
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : instituteur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2018
    Messages : 617
    Par défaut
    merci pour votre reponse mais je n'ai pas trouvé grande chose sur le sujet proposé.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Niamké 19 Voir le message
    Je reconnais que ma réponse aurait mérité plus d'explications et ne traite que la façon de mettre à jour un enregistrement depuis un userform. Ce fichier contient plutôt une méthode permettant d'associer un champ d'une table à un contrôle dans un userform avec une table de correspondance. Une fois fait cette correspondance et vérifié leur présence dans cette table, vous n'avez plus à coder en dur la correspondance entre les colonnes et les contrôles. L'avantage est de pouvoir modifier votre table tout en limitant les modifications sur le code aux seuls ajouts ou retraits de vos contrôles.

    Désolé.
    Dernière modification par Invité ; 30/09/2018 à 04h11.

  5. #5
    Membre éclairé
    Homme Profil pro
    instituteur
    Inscrit en
    Juillet 2018
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : instituteur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2018
    Messages : 617
    Par défaut
    Merci pour votre soutien et votre réponse. Je vais continuer en fouiner

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment modifier une base de données via une listbox ?
    Par Mr l'Ashanti dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 17/09/2018, 19h40
  2. Connaitre la taille d'une base de données via une requète en ADO
    Par olysmar2 dans le forum Développement
    Réponses: 21
    Dernier message: 03/11/2015, 23h42
  3. inserer les données d'une base de données dans une autres?
    Par enstein8 dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 14/10/2011, 13h33
  4. Réponses: 3
    Dernier message: 22/10/2008, 17h55
  5. Récuperer les données d'une base de donnée via ODBC dans une variable
    Par arogues dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 04/04/2008, 15h27

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