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

Affichage des résultats du sondage: Trouvez-vous cette question utile?

Votants
1. Vous ne pouvez pas participer à ce sondage.
  • Oui

    0 0%
  • Non

    1 100,00%
  1. #1
    Candidat au Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    septembre 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : septembre 2016
    Messages : 2
    Points : 3
    Points
    3

    Par défaut fonction paramétrée sur une table

    Bonjour tout le monde

    Je suis nouveau dans le forum et j'ai besoin d'une aide. J'ai cherché en vain dans la faq

    voici mon soucis

    J'aimerai écrire une fonction qui vider les données de la table qui lui est indiqué.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Public Function ViderContenu(NomTable As DAO.TableDef)
    
        CurrentDb.Execute "DELETE * FROM nomtable"
    
    End Function
    Je fais appelle à cette foncion par le code où "TDetail" est le nom de la table que je souhaite vider
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Call ViderContenu(TDetail)
    mais j'ai une erreur (Type d'argument ByRef incompatible)

    Vos aides me seront très utiles

    Cordialement

  2. #2
    Expert éminent
    Avatar de tee_grandbois
    Homme Profil pro
    retraité mais encore activé
    Inscrit en
    novembre 2004
    Messages
    4 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité mais encore activé

    Informations forums :
    Inscription : novembre 2004
    Messages : 4 160
    Points : 7 087
    Points
    7 087

    Par défaut

    bonsoir,
    - le paramètre Nomtable doit être déclarée en "String" puisque le nom d'une table est de type texte
    - la variable doit être en dehors des double-quotes "" pour que VBA puisse l'interpréter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Public Function ViderContenu(NomTable As String)
     
        CurrentDb.Execute "DELETE * FROM " & NomTable
     
    End Function
    il faut donc passer un argument de type texte à la fonction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Call ViderContenu("TDetail")
    La demande de sondage, c'est un mauvais choix dans le menu message ?
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...

  3. #3
    Modérateur

    Homme Profil pro
    Inscrit en
    octobre 2005
    Messages
    12 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : octobre 2005
    Messages : 12 944
    Points : 19 625
    Points
    19 625

    Par défaut

    Bonjour.

    Juste pour rebondir sur la reponse de Tee_Grandbois .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CurrentDb.Execute "DELETE * FROM [" & NomTable & "]"
    Au cas, pas recommande mais possible, ou ton nom de table comporte des espaces, des tirets et autres fantaisies.
    Perso j'ai tendace a mettre des sytematiquemnt des crochets autours des noms de tables et de champs car je trouve que cela fait plus "contenant".
    Et je viens du COBOL où faire une addition prend 2 pages de code :-) donc un ou deux caracteres de plus ne me gene pas.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  4. #4
    Candidat au Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    septembre 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : septembre 2016
    Messages : 2
    Points : 3
    Points
    3

    Par défaut



    Merci beaucoup à vous les gars ça marché à merveille.

    cordialement

  5. #5
    Membre régulier Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    septembre 2009
    Messages
    347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : septembre 2009
    Messages : 347
    Points : 118
    Points
    118

    Par défaut

    Salut membres du forum !
    J'aimerais savoir lorsqu'on voudrais vider avec le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Call ViderContenu("TDetail")
    - 1°) un seul champ d'une table qui à plusieurs champs,

    - 2°) quelques données d'un ou plusieurs champs d'une table,

    Question: comment faut il faire ?

    Cordialement.
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  6. #6
    Modérateur

    Homme Profil pro
    Inscrit en
    octobre 2005
    Messages
    12 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : octobre 2005
    Messages : 12 944
    Points : 19 625
    Points
    19 625

    Par défaut

    Bonjour.

    Pour donner plus de visibilité à ta question, car poster dans une discussion résolue attire peu l'attention, j'ai créé la discussion suivante :

    https://www.developpez.net/forums/d1.../#post10775760

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

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

Discussions similaires

  1. [WD18] Requête paramétrée sur une table
    Par nrdz83 dans le forum WinDev
    Réponses: 3
    Dernier message: 15/03/2016, 16h04
  2. Réponses: 1
    Dernier message: 28/02/2008, 08h17
  3. [VBA]Fonction 'ajout' en vba sur une table
    Par rico63 dans le forum VBA Access
    Réponses: 15
    Dernier message: 28/03/2007, 16h56
  4. Réponses: 6
    Dernier message: 08/02/2007, 14h41
  5. selection sur une table en fonction de plusieurs ligne
    Par dimdidi dans le forum Langage SQL
    Réponses: 2
    Dernier message: 06/12/2004, 08h42

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