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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    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
    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
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 959
    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

  3. #3
    Membre habitué
    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
    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 : 425
Taille : 181,9 Ko

  4. #4
    Expert éminent
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 959
    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 :

  5. #5
    Membre habitué
    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
    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
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 959
    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.

+ 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