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

Macros et VBA Excel Discussion :

For Each . in Selection


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 31
    Par défaut For Each . in Selection
    Bonjour,

    J'ai écris le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub commentTZ()
        Dim Cel As Range
        For Each Cel In selection
            Cel.AddComment (TestZéro(ActiveCel))
        Next Cel
    End Sub
    il ne fonctionne pas. l'erreur est la suivante : erreur de compilation fonction ou variable attendue...
    visiblement il y a un problème au niveau du selection

    Pouvez vous m'aider ?

    Merci beaucoup

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    1) - que viennent faire des parenthèses ici ? :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cel.AddComment (TestZéro(ActiveCel))
    2) qu'est la procédure TestZéro, dont on ignore le code ?

    3)
    visiblement il y a un problème au niveau du selection
    "visiblement" tu n'as rien compris à ce qu'attend (une chaîne de caractères) l'utilisation de la méthode AddComment -->> ouvrir d'urgence ton aide VBA à la rubrique Range.AddComment, méthode

  3. #3
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Salut,

    et ActiveCell avec 2 l
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  4. #4
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 31
    Par défaut
    ah je ne savais pas qu'il ne fallait pas mettre de parenthèses...il y en a dans mon cours..

    Testzéro affecte "reçu" à la cellule si elle est supérieure à 10 et "non reçu" sinon, voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Property Get TestZéro(Cellule As Range) As String
        Select Case Cellule.Value
            Case Is < 10
                TestZéro = "pas recu"
            Case Else
                TestZéro = "recu"
            End Select
    End Property

  5. #5
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 31
    Par défaut
    le terme rien compris est un peu fort....mais bon...

    surtout que TestZéro renvoie bien une chaine de caractère....

    par contre effectivement ce n'est pas ActiveCell mais Cel ! Désolé j'avais fait quelques modification pour faire des test suite à cette erreur et j'ai oublié de d'enlever cette modification.

  6. #6
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bien.
    Tu aurais du au moins signaler dès ton tout premier message que Testzéro était une fonction et qu'elle renvoyait bien une valeur de type string. Prends cette bonne habitude.
    Résolu, alors ?

  7. #7
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    De ce que je vois le problème ne vient pas du code, les parenthèse bien qu'inutile ne porte pas a conséquent de ton cas!
    L'histoire d'ActiveCell est une erreur de résonnement pas de code!
    Quelle est la provenance du fichier?

    Si quand tu écris selection et que la première lettre le s en occurrence reste minuscule il y a un problème!
    Dernière modification par Invité ; 06/04/2017 à 08h07.

Discussions similaires

  1. [XSLT] XSLT sort dans un for-each avec select sur un param
    Par tralloc dans le forum Format d'échange (XML, JSON...)
    Réponses: 5
    Dernier message: 23/11/2012, 09h06
  2. test avant d'entrer dans une boucle For each cell in selection
    Par totoro02 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 13/01/2009, 09h27
  3. xsl:for-each avec un parametre pour select
    Par arnog dans le forum XSL/XSLT/XPATH
    Réponses: 7
    Dernier message: 26/08/2008, 13h09
  4. for-each avec select dans un node-set
    Par krapno dans le forum XSL/XSLT/XPATH
    Réponses: 24
    Dernier message: 13/07/2007, 16h48
  5. Un double Select doublé d un "for each" qui coince
    Par Sparal dans le forum Access
    Réponses: 4
    Dernier message: 09/02/2006, 14h00

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