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 :

Problème avec Range.select [XL-2019]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Juillet 2018
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2018
    Messages : 50
    Par défaut Problème avec Range.select
    Bonjour,
    J'ai un petit problème avec un range.select
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
                            'Worksheets("Matrice").Range("S" & therow).Select
                            ActiveWorkbook.Sheets("Matrice").Cells(therow, 19).Select
                            ActiveCell.FormulaR1C1 = _
                            "=IF(AND((RC[-3]*RC[-2]*RC[-1])>=1,(RC[-3]*RC[-2]*RC[-1])<=19),""Low"",IF(AND((RC[-3]*RC[-2]*RC[-1])>=20,(RC[-3]*RC[-2]*RC[-1])<=34),""Medium"",IF(AND((RC[-3]*RC[-2]*RC[-1])>=35,(RC[-3]*RC[-2]*RC[-1])<=49),""High"",IF(AND((RC[-3]*RC[-2]*RC[-1])>=50,(RC[-3]*RC[-2]*RC[-1])<=64),""High"",""""))))"
    Si j'utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("Matrice").Range("S" & therow).Select ou ActiveWorkbook.Sheets("Matrice").Cells(therow, 19).Select
    il m'affiche le message suivant:
    La méthode select de la classe Range a échoué.
    Quelqu'un peut me donner une solution pour résoudre mon problème.
    je vous remercie d'avance pour votre collaboration.
    Bien cordialement.
    MamaB

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Déjà, le Select ne sert à rien. Donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Worksheets("Matrice").Cells(therow, 19).FormulaR1C1 = _
    "=IF(AND((RC[-3]*RC[-2]*RC[-1])>=1,(RC[-3]*RC[-2]*RC[-1])<=19),""Low"",IF(AND((RC[-3]*RC[-2]*RC[-1])>=20,(RC[-3]*RC[-2]*RC[-1])<=34),""Medium"",IF(AND((RC[-3]*RC[-2]*RC[-1])>=35,(RC[-3]*RC[-2]*RC[-1])<=49),""High"",IF(AND((RC[-3]*RC[-2]*RC[-1])>=50,(RC[-3]*RC[-2]*RC[-1])<=64),""High"",""""))))"
    Si ça ne fonctionne toujours pas, regarde le contenu de la variable therow au moment d'exécuter cette ligne.

  3. #3
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 478
    Par défaut
    Bonjour,

    Il n'y a pas besoin de Select pour mettre en place une formule, il suffit de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      Worksheets("Matrice").Range("S" & therow).FormulaR1C1 = _
         "=IF(AND((RC[-3]*RC[-2]*RC[-1])>=1,(RC[-3]*RC[-2]*RC[-1])<=19),""Low"",IF(AND((RC[-3]*RC[-2]*RC[-1])>=20,(RC[-3]*RC[-2]*RC[-1])<=34),""Medium"",IF(AND((RC[-3]*RC[-2]*RC[-1])>=35,(RC[-3]*RC[-2]*RC[-1])<=49),""High"",IF(AND((RC[-3]*RC[-2]*RC[-1])>=50,(RC[-3]*RC[-2]*RC[-1])<=64),""High"",""""))))"
    Pour trouver d'où vient ton problème, découpes le :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      Worksheets("Matrice").Activate
      Worksheets("Matrice").Range ("S" & therow)
    Ligne 1 : le nom de la feuille n'existe pas dans le classeur actif
    Ligne 2 : la valeur de therow est incorrecte

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

Discussions similaires

  1. problème avec un select max
    Par bobic dans le forum Oracle
    Réponses: 7
    Dernier message: 14/11/2005, 11h22
  2. [MySQL] Problème avec un SELECT
    Par glloq8 dans le forum PHP & Base de données
    Réponses: 18
    Dernier message: 19/10/2005, 15h10
  3. []Problème avec un "Select Case" : Instructions et..
    Par Olun dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 07/09/2005, 13h32
  4. Problème avec un SELECT
    Par birkoss dans le forum Langage SQL
    Réponses: 2
    Dernier message: 16/08/2005, 19h04
  5. [struts][JSP][select] problème avec le select
    Par redge_touch dans le forum Struts 1
    Réponses: 4
    Dernier message: 14/01/2004, 10h05

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