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

VBA Access Discussion :

Création d'un module : petit probleme de syntaxe


Sujet :

VBA Access

  1. #1
    Membre habitué
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Novembre 2007
    Messages
    297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Novembre 2007
    Messages : 297
    Points : 129
    Points
    129
    Par défaut Création d'un module : petit probleme de syntaxe
    Bonjour,

    j'ai trouvé une procédure qui permet de formater correctement un lien email (avoir mailto au lieu de http://)

    j'ai créé un module utilitaire et j'ai mis le code ci-dessous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Public Sub formatemail(mailctrl As String)
    'Reformate correctemment le lien hypertexte
    'Vire le http:\\ et le remplace par mailto:
    'mailctrl doit corresprondre au  controle sur le formulaire par ex: me.mail
    Dim hlk As Hyperlink 'déclare la variable
    Set hlk = mailctrl.Hyperlink 'alimente la variable avec le contenu du champ sc_mail
    If Left(hlk.Address, 7) = "http://" Then 'si le debut du lien est http:// alors
    mailctrl = "#mailto:" & Mid(hlk.Address, 8) & "#" 'http:// est remplacé par Mailto:
    End If
    End Sub
    Lorsque j'appelle formatemail a partir d'un afterupdate d'un controle j'obtiens l'erreur suivante :

    erreur de compilation : qualificateur incorrect.
    le debogeur stoppe sur mailctrl

    Qui peut me corriger ?

    merci d'avance

  2. #2
    Inscrit

    Profil pro
    Inscrit en
    Février 2004
    Messages
    862
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2004
    Messages : 862
    Points : 1 229
    Points
    1 229
    Par défaut
    Citation Envoyé par sebinator Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Public Sub formatemail(mailctrl As String)
    'Reformate correctemment le lien hypertexte
    'Vire le http:\\ et le remplace par mailto:
    'mailctrl doit corresprondre au  controle sur le formulaire par ex: me.mail
    Dim hlk As Hyperlink 'déclare la variable
    Set hlk = mailctrl.Hyperlink 'alimente la variable avec le contenu du champ sc_mail
    If Left(hlk.Address, 7) = "http://" Then 'si le debut du lien est http:// alors
    mailctrl = "#mailto:" & Mid(hlk.Address, 8) & "#" 'http:// est remplacé par Mailto:
    End If
    End Sub
    J'ai mis en rouge les points qui me parraissent étranges.

    Principalement le premier; je ne pense pas qu'il faille passer un type String à ta méthode, mais plutôt le contrôle non ?
    In my experience, any attempt to make any system idiot proof will only challenge God to make a better idiot.

  3. #3
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    C'est dans le Mid que tu rencontre un problème.

    En VBA

    Pour l'extraction de partie de chaîne, il faut un entier en plus.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Mid("Mon Texte" , Caractère début, Nombre Caractères)
    Où Caractère Début represente l'emplacement dans la chaîne du premier caractère extrait et Nombre Caractère qui représente le nombre de carctères qui seront extraits.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Mid("Heureux-oli", 2, 3)
    donnera :
    eur
    Or, voila ton code :
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

Discussions similaires

  1. petit probleme de syntaxe
    Par idream dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 29/04/2010, 11h27
  2. Modulation amplitude petite probleme
    Par mihaispr dans le forum Signal
    Réponses: 2
    Dernier message: 11/12/2009, 11h17
  3. Requete petite probleme de syntaxe
    Par mihaispr dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 07/11/2009, 13h08
  4. Petit probleme de syntaxe
    Par pooi1 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 26/06/2007, 11h47
  5. petit probleme de syntaxe
    Par kiss78 dans le forum Langage
    Réponses: 3
    Dernier message: 05/06/2006, 12h21

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