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 :

Fonction COLUMN HISTORY


Sujet :

IHM

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 11
    Points : 7
    Points
    7
    Par défaut Fonction COLUMN HISTORY
    Bonjour,

    Je n'arrive pas à faire fonctionner la fonction COLUMNHISTORY, je pense que c'est une question de syntaxe.

    Le champ "Comment" est de type texte long, le champ "IDSAV" est clé primaire de la table "SAV" et est de type numéro auto.
    Voici ma formule qui ne fonctionne pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =ColumnHistory("SAV";"[Comment]";" [IDSAV]=formulaire.[IDSAV]")
    Merci d'avance pour votre aide,

    Cordialement,

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 686
    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 686
    Points : 14 686
    Points
    14 686
    Par défaut
    Bonjour,
    je n'ai jamais utilisé cette méthode dans Access qui existe depuis 2007. D'après ce que j'ai lu, il faut que la propriété "Ajouter uniquement" du champ de la table soit à "Oui". Ensuite, comme cette méthode (car ce n'est pas une fonction) s'utilise comme une fonction de domaine, les paramètres doivent être passés de la même manière :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =ColumnHistory("SAV";"[Comment]";"[IDSAV]=" & [IDSAV])
    Enfin, comme c'est une méthode, je doute que l'on puisse l'utiliser ailleurs que dans VBA, pour se faire il faudra utiliser une fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Function fColHist(nSav as long) as string
        Dim sHistory As String
     
        sHistory = Application.ColumnHistory("SAV", "Comment", "IDSAV=" & nSav)
        fColHist = sHistory
    End Sub
    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
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Bonjour,

    Merci, j'ai copié votre fonction dans mon module VBA, et sur le formulaire dans source contrôle j'ai mis la fonction et ça me fait l'erreur #Nom ?
    ci dessous le screenshot. Encore merci pour votre aide.

    Nom : columnhistory.png
Affichages : 383
Taille : 181,9 Ko

  4. #4
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 686
    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 686
    Points : 14 686
    Points
    14 686
    Par défaut
    Bonsoir,
    il serait plus pratique de copier le code entre les balises (icône # sur ligne 2 du menu message) plutôt qu'une image.
    Il faut enlever ce qui ressemble à des doubles-guillemets autour du nom du champ et mettre le nom du champ utilisé et non pas celui du paramètre de la fonction :
    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 ?

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Re Bonjour,

    j'ai repris votre code tel quel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Function fColHist(nSav As Long) As String
        Dim sHistory As String
     
        sHistory = Application.ColumnHistory("SAV", "Comment", "IDSAV=" & nSav)
        fColHist = sHistory
    End Sub
    Merci

  6. #6
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 686
    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 686
    Points : 14 686
    Points
    14 686
    Par défaut
    j'ai repris votre code tel quel :
    Oui, c'est la fonction que tu as copié dans un module, très bien. Mais cette fonction s'utilise avec un variable pertinente : le champ IDSAV qu'on passe en paramètrenSav est le nom du paramètre de la fonction, ensuite la fonction va s'exécuter et afficher le résultat si tout ce passe bien.
    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 ?

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    j'ai donc mis ce code =fColHist([IDSAV]) dans la source du contrôle mais dès l'ouverture du formulaire la macro bug et le débogueur s'affiche. Je devais en fait mettre end Function et non End Sub. tout marche niquel merci beaucoup !

  8. #8
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 686
    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 686
    Points : 14 686
    Points
    14 686
    Par défaut
    Je devais en fait mettre end Function et non End Sub. tout marche niquel merci beaucoup !
    ah oui, désolé pour l'erreur ... c'est bien d'avoir trouvé toi-même.
    Peux-tu mettre le sujet en ?
    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 ?

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

Discussions similaires

  1. [AC-97] fonction column liste déroulante
    Par FIFI33160 dans le forum IHM
    Réponses: 3
    Dernier message: 30/08/2012, 22h21
  2. Réponses: 1
    Dernier message: 05/08/2009, 11h19
  3. [AC-2007] fonction Column() ne fonctionne pas
    Par thb74 dans le forum IHM
    Réponses: 5
    Dernier message: 03/05/2009, 22h24
  4. Contrainte de column check + fonction
    Par KonTiKI dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 23/02/2009, 18h14
  5. Réponses: 3
    Dernier message: 01/02/2007, 11h09

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