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

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%
Access Discussion :

fonction paramétrée sur une table


Sujet :

Access

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Septembre 2016
    Messages
    4
    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 : 4
    Points : 6
    Points
    6
    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 sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 621
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 621
    Points : 14 577
    Points
    14 577
    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 ...
    ah non ? donc devant l'écran c'est la connectique ?

  3. #3
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 323
    Points : 23 758
    Points
    23 758
    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
    Futur Membre du Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Septembre 2016
    Messages
    4
    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 : 4
    Points : 6
    Points
    6
    Par défaut


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

    cordialement

  5. #5
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    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.
    Je ne Suis Pas un Expert en Programmation
    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
    15 323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 323
    Points : 23 758
    Points
    23 758
    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, 17h04
  2. Réponses: 1
    Dernier message: 28/02/2008, 09h17
  3. [VBA]Fonction 'ajout' en vba sur une table
    Par rico63 dans le forum VBA Access
    Réponses: 15
    Dernier message: 28/03/2007, 17h56
  4. Réponses: 6
    Dernier message: 08/02/2007, 15h41
  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, 09h42

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