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 :

Probleme de syntaxe (?) dans la sélection d'une plage de cellules parametrables


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Ropa
    Inscrit en
    Avril 2021
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ropa
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2021
    Messages : 10
    Par défaut Probleme de syntaxe (?) dans la sélection d'une plage de cellules parametrables
    Bonjour,
    débutant, j'ai une question sur une commende IF et un vrai pb sur une partie de la ligne de commande qui a pour objet de mettre sous condition le fond des cellules pour certaines lignes des colonnes A à G .
    Dans un 1er temps, je test la syntaxe dans le dernier test de IF
    If Worksheets(FeuilleBdc).Cells(BdcLigne, ColBdcExport) = "oui" Then Worksheets(FeuilleEcr).Range(Cells(Ecbcoldeb, EcbLigne), Cells(EcbcolFin, EcbLigne)).Interior.Color = RGB(255, 128, 128)
    Voilà des heures que j’essaie plusieurs des solutions mais aucune ne fonctionne.
    Par ailleurs concernant l'instruction IF, je ne comprend pas pourquoi,dés que je veux utiliser ELSE et/ou END IF je me fais jeter.

    Si quelqu'un pouvait m'aider, je lui en serai vraiment reconnaissant
    Cordialement
    PS : le code source est dans le fichier excel joint sous le nom test1 Alt + F11 et dans le fichier Code test1.pdf

    PJ : Fichier test
    Description du traitement a effectuer
    Images attachées Images attachées  
    Images attachées Images attachées

  2. #2
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 680
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 680
    Par défaut
    Bonjour,

    Plutôt qu'un fichier joint, donne directement ton code (penses aux balises code) tu auras plus de réponse.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(Ecbcoldeb, EcbLigne), Cells(EcbcolFin, EcbLigne)
    Tu a inverser ligne et colonne

    Il y a plusieurs syntaxe possible pour le if
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    if condition then instruction 'sur une ligne
     
    if condition then
    instruction 1
    instruction 2
    ...
    end if 'sur plusieurs ligne
     
    if condition then
    instruction 1
    instruction 2
    ...
    else
    instruction 1
    instruction 2
    ...
    end if 'avec un else

  3. #3
    Membre habitué
    Homme Profil pro
    Ropa
    Inscrit en
    Avril 2021
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ropa
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2021
    Messages : 10
    Par défaut Ajout de précision dans le texte du message et essais avec erreur
    Bonjour,

    Merci, pour l'info
    Concernant la syntaxe du code, j'avais déjà essayé avec la syntaxe que tu m'indiques par acquis de conscience je viens de réessayer mais c'est aussi en erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Worksheets(FeuilleBdc).Cells(BdcLigne, ColBdcExport) = "oui" Then Worksheets(FeuilleEcr).Range(Cells(EcbLigne, Ecbcoldeb), Cells(EcbLigne, EcbcolFin)).Interior.Color = RGB(255, 128, 128)
    concernant la syntaxe j'ai essayé comme tu me l'indiques mais avec une seule instruction après Then entre if et else, mais en erreur aussi.
    Franchement je suis perdu

    La totalité du code est dans le fichier Excel Test1 alt+F11 et je l'ai rajouté en Pdf, mais beaucoup moins lisible .
    CdT

  4. #4
    Membre extrêmement actif Avatar de mjpmjp
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2012
    Messages
    1 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2012
    Messages : 1 133
    Par défaut
    bonjour,
    est ce normal ?

    Cells(EcbLigne, EcbLigne)

    @+JP
    Caractéristiques (WEB) phpMyAdmin 4-74 , PHP 5-631 , Apache 2-427 , MySQL 5-719
    Présentation NAS DS-3615xs + 20Go , DSM 6.1.6-15266 Up1 , 12 * WD 4To WD4000F9YZ (10 raid 6+ )+(2 raid 1+) , LinkSys comutateur-switch lgs528p-eu , Onduleur UPS 720W Power Boxx Lcd (4*UPS + 4*MOD)
    Mes contributions (EXCEL) Form GRAPHIQUE: Gestion des boutons , Liste Onglet dynamique...GESTION de FILM

  5. #5
    Membre habitué
    Homme Profil pro
    Ropa
    Inscrit en
    Avril 2021
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ropa
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2021
    Messages : 10
    Par défaut peu etre corrigé pour le style
    Bonjour,
    Merci pour la réponse, Non effectivement ce n'est pas normal la colonne devrait être à Ecbcoldeb, je vais rectifier!
    Pour le test cela ne gêne pas car le but est de tester que la dernière ligne renseignée est passée. et j'ai mis juste quelques lignes
    afin de tester le VBA avec toutes les conditions.
    J'ai déjà testé client inconnu et cela fonctionne, par contre pour le test de colorisation de plusieurs cellules (test du dernier if), je crois avoir essayé dans tous les sens sans y arriver, mais bon je suis bien conscient que l'erreur c'est moi qui la génère et je n'arrive pas a trouver la solution
    Cdt

  6. #6
    Membre extrêmement actif Avatar de mjpmjp
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2012
    Messages
    1 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2012
    Messages : 1 133
    Par défaut
    bonjour,

    peut être ici

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     Worksheets(FeuilleBdc).Activate
        BdcLigne = BdcLigne
    @+JP
    Caractéristiques (WEB) phpMyAdmin 4-74 , PHP 5-631 , Apache 2-427 , MySQL 5-719
    Présentation NAS DS-3615xs + 20Go , DSM 6.1.6-15266 Up1 , 12 * WD 4To WD4000F9YZ (10 raid 6+ )+(2 raid 1+) , LinkSys comutateur-switch lgs528p-eu , Onduleur UPS 720W Power Boxx Lcd (4*UPS + 4*MOD)
    Mes contributions (EXCEL) Form GRAPHIQUE: Gestion des boutons , Liste Onglet dynamique...GESTION de FILM

  7. #7
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 680
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 680
    Par défaut
    Citation Envoyé par Ropa48 Voir le message
    La totalité du code est dans le fichier Excel Test1 alt+F11 et je l'ai rajouté en Pdf, mais beaucoup moins lisible .
    CdT
    Pourquoi faire simple quand on peut faire compliqué ... tu aurais pu zippé le pdf aussi ça aurait été encore mieux

    Pourquoi ne pas copier directement le code dans ton message ?

  8. #8
    Membre habitué
    Homme Profil pro
    Ropa
    Inscrit en
    Avril 2021
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ropa
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2021
    Messages : 10
    Par défaut Soit indulgent
    Citation Envoyé par halaster08 Voir le message
    Pourquoi faire simple quand on peut faire compliqué ... tu aurais pu zippé le pdf aussi ça aurait été encore mieux

    Pourquoi ne pas copier directement le code dans ton message ?
    Sans doute est ce parce que c'est la première fois que j'utilise ce forum ou ???? ce n'est pas impossible !
    A l'avenir concernant mes posts Je suivrai le principe de La Rochefoucauld.
    "La simplicité, qui devrait être une qualité naturelle, a souvent besoin d’étude pour s’acquérir."

Discussions similaires

  1. Réponses: 3
    Dernier message: 17/03/2014, 21h17
  2. [XL-2007] Sélection d'une plage de cellule dynamiquement
    Par patm dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 22/03/2011, 11h03
  3. [XL-2007] Sélection d'une plage de cellules
    Par renaud51 dans le forum Excel
    Réponses: 7
    Dernier message: 28/07/2009, 09h20
  4. Autoriser sélection d'une plage de cellule dans une feuille Excel
    Par philoflore dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 01/08/2008, 09h49
  5. Userform pour sélection d'une plage de cellule
    Par humbp dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 07/01/2008, 12h41

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