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

IHM Discussion :

problème de mise à jour des champs disponibles dans TCD [AC-2003]


Sujet :

IHM

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2009
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 77
    Points : 54
    Points
    54
    Par défaut problème de mise à jour des champs disponibles dans TCD
    Bonjour

    J'utilise ACCESS 2003, et j'ai une petite base avec quelques tables, et surtout quelques formulaires avec des TCD.
    Lorsque je modifie mes tables ou les requêtes sources de mes TCD, la liste de champs disponibles ne se met pas à jour : elle reste la même que lors de la création de mon TCD : ainsi si j'ajoute des champs dans mes tables ou mes requêtes, je ne les retrouve pas dans ma liste de champs dans mon TCD.
    Evidemment j'ai essayé le bouton "!", mais sans résultat. Fermer et rouvrir mon TCD non plus.
    Comme j'avais créé ma base sur ACCESS 2002 et que je l'ai migré sur ACCESS 2003, j'ai recréé une base dans le format 2003 : rien n'y fait non plus.
    La solution : refaire entièrement le TCD à chaque modif de la requête ou la table source, ce qui est vraiment une galère.
    Ma question : y a-t-il une façon de la faire en VBA, car via les interfaces graphiques il n'y a pas la commande adéquate ?
    De plus, si vous avez un petit bout de code ou un nom d'objet je suis preneur.
    Merci beaucoup d'avance

  2. #2
    Membre expérimenté
    Homme Profil pro
    Indépendant développeur et formateur
    Inscrit en
    Octobre 2007
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Indépendant développeur et formateur
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 036
    Points : 1 598
    Points
    1 598
    Par défaut
    hello
    il faut chercher dans les tutos, je crois que j'y ai vu la solution
    en gros le principe est :
    - avoir un formulaire indépendant avec des noms de champs non attribués et des textes d'étiquettes 'idiots' (comme ch1, ch2, ....)
    - à l'ouverture du formulaire, ouvrir un recordset sur la requête d'analyse croisée
    - - balayer ce recordset pour trouver les noms de champs et les attribuer comme source aux zones de texte et comme titre aux étiquettes
    - - rendre invisible les zdt non utilisées ou bien le contraire: rendre visible les zdt utilisées
    - attribuer la requête comme source du formulaire

    sinon, la solution que j'utilisais avant de connaître VBA était de refaire mon formulaire à chaque nouvelle colonne de l'analyse croisée.

    Bon courage

    Ps: j'ai un peu de code à te passer si ça peut t'aider
    -------------------Simplifi----------comme si tout était simple--------

  3. #3
    Membre du Club
    Inscrit en
    Janvier 2009
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 77
    Points : 54
    Points
    54
    Par défaut
    Salut Simplifi

    Merci pour ta réponse, qui m'a permis de trouver la solution : je ne m'embarasse même pas de manipulation de RecordSets, il suffit de passer en mode création de mon formulaire, puis de créer à la main mes zones de texte, en leur affectant le champ de données voulu (il doit être présent dans la requête ou la table sous-jacente).
    Je retrouve ensuite mes champs dans la liste de champs du TCD, lorsque je passe en mode "Tableau croisé dynamique", et le tour est joué !

    Merci beaucoup

  4. #4
    Membre expérimenté
    Homme Profil pro
    Indépendant développeur et formateur
    Inscrit en
    Octobre 2007
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Indépendant développeur et formateur
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 036
    Points : 1 598
    Points
    1 598
    Par défaut
    hello
    bien sûr, la méthode manuelle peut être efficace, seulement elle nécessite des interventions de la part d'un connaisseur.
    la programmation VBA permet de laisser l'utilisation à quelqu'un qui ne peut intervenir dans la création.
    Content d'avoir aidé
    -------------------Simplifi----------comme si tout était simple--------

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

Discussions similaires

  1. Problème de mise à jour de champ dans l'en tête
    Par d.martin77 dans le forum VBA Word
    Réponses: 3
    Dernier message: 12/07/2014, 00h57
  2. [WD-2007] Problème de signets lors de la mise à jour des champs
    Par Maugusti dans le forum Word
    Réponses: 4
    Dernier message: 12/12/2012, 17h31
  3. Réponses: 5
    Dernier message: 20/09/2011, 18h55
  4. Réponses: 10
    Dernier message: 03/03/2009, 11h46
  5. Problème de mise à jour des champs Auto incrémentés avec VB6.
    Par NHenry dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 28/05/2007, 16h06

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