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

VBA Access Discussion :

Lister dans un formulaire les tables qui commence par "toto" [AC-2013]


Sujet :

VBA Access

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 53
    Points : 33
    Points
    33
    Par défaut Lister dans un formulaire les tables qui commence par "toto"
    Bonjour,

    Je voudrais afficher dans un formulaire un listing de toutes mes tables commençant par "toto"

    Un peu comme cette exemple, mais sans de message box, avec toutes les tables commançant par toto et pas seulement "toto2015"

    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
     
    Function TableExiste( _
      db As DAO.Database, _
      ByVal strTable As String) _
      As Boolean
      Dim tdf As DAO.TableDef
      ' Parcourir toutes les tables de la base
      For Each tdf In db.TableDefs
        If tdf.Name = strTable Then
          MsgBox ("table trouvée : " & tdf.Name)
          ' La table a été trouvée...
        End If
      Next
      ' Fin de la reherche
      MsgBox ("Fin de la recherche") 
    End Function
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    If TableExiste(CurrentDb, "toto2015") Then
        Me.Undo
    End If
    Cordialement

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonsoir,

    lister ? Lister dans un formulaire, qu'est-ce que tu entends par là ?
    1- Tu as un formulaire tabulaire basé sur une table et tu veux que les noms des tables commençant par "toto" soient affichés dans ton formulaire ?
    2- Tu as une zone de texte dans ton formulaire et tu veux que la liste des tables commençant par "toto" s'affiche dans la zone de texte ?
    3- Tu as une zone de liste dans ton formulaire et tu veux que la liste des tables commençant par "toto" soit la source de ta zone de liste ?
    Laquelle de ses 3 situations correspond à ton problème parce que les solutions sont différentes selon.

    Cordialement,
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 53
    Points : 33
    Points
    33
    Par défaut
    Bonjour,

    Merci à madefemere d'avoir repondu.

    Je veux que les noms des tables commençant par "toto" soient affichés dans mon formulaire dans une zone de liste de façon à les reprendre en paramètre plus facilement.

    Cordialement

  4. #4
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 600
    Points
    24 600
    Par défaut
    Bonjour,

    il te faut parcourir les tables une à une et récupérer le nom de celles qui commencent par "toto". Approximativement comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    dim db as dao.database
    dim tbl as dao.tabledef
    dim listeNomTable as String
     
    set db = currentdb
    for each tbl in db.tabledefs
        if tbl.name like "toto*" then
           listeNomTable = iif(len(listeNomTable)>0,";","") & tbl.name 
        endif
    next
     
    set tbl = nothing
    db.close
    set db=nothing

    listeNomTable doit ensuite être affecté au contenu de la liste.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 53
    Points : 33
    Points
    33
    Par défaut
    Bonjour,

    Merci à loufab

    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 TablesExistantes_Click()
     
    Dim db As dao.Database
    Dim tbl As dao.TableDef
    Dim listeNomTable As String
    Set db = CurrentDb
    For Each tbl In db.TableDefs
        If tbl.Name Like "*2015" Then
           listeNomTable = listeNomTable & IIf(Len(listeNomTable) > 0, ";", "") & tbl.Name
           Me!List.RowSource = listeNomTable
           ListText.Value = listeNomTable
        End If
    Next
    Set tbl = Nothing
    db.Close
    Set db = Nothing
     
    End Sub
    Voici la solution finale pour l'afficher dans une zone de liste nommé "List" et pour l'afficher dans zone de texte nommé "ListText"

    Cordialement

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

Discussions similaires

  1. [XL-2000] Comment faire pour distinguer les cellules qui commencent par
    Par Avinetor dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/06/2009, 14h36
  2. Dénombrer les cellules qui commencent par X
    Par NEC14 dans le forum Excel
    Réponses: 7
    Dernier message: 30/01/2009, 12h48
  3. Afficher seulement les entrées qui commencent par X
    Par anarchoi dans le forum Langage SQL
    Réponses: 2
    Dernier message: 10/05/2007, 06h31
  4. Réponses: 5
    Dernier message: 19/01/2007, 22h53
  5. Parcourir tout les Id qui commence par "dz_"
    Par FMaz dans le forum Général JavaScript
    Réponses: 28
    Dernier message: 24/03/2006, 21h46

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