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 :

Utiliser Variable avec With Sheets() – Erreur execution 424 [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Utiliser Variable avec With Sheets() – Erreur execution 424
    Bonjour,
    J’ai créé le code suivant (rechercher dernière cellule d’une plage et la nommer) qui fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Dim DerLigTaux As Long
    TauxSheetName = "ModeOp" 'NOM DE FEUILLE
        LigTxDebut = 2
        ColTxDevise = "A"
    With Sheets(TauxSheetName)
        DerLigTaux = .[A2].End(xlDown).Row
        .Range(ColTxDevise & LigTxDebut & ":" & ColTxDevise & DerLigTaux).Name = "Devise"
    End With
    Ensuite, je souhaiterais utiliser une variable à la place de la valeur de départ fixe (« A2 »). J’ai légèrement modifié le code ligne 7:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Dim DerLigTaux As Long
    TauxSheetName = "ModeOp" 'NOM DE FEUILLE
        LigTxDebut = 2
        ColTxDevise = "A"
    With Sheets(TauxSheetName)
        DerLigTaux = .[ColTxDevise & LigTxDebut].End(xlDown).Row
        .Range(ColTxDevise & LigTxDebut & ":" & ColTxDevise & DerLigTaux).Name = "Devise"
    End With
    L’erreur d’exécution 424 s’affiche. Selon l’aide, il s’agit d’un problème de qualificateur d’objet.
    J’ai donc tenté de déclarer mes variables, exemple :
    Dim ColTxDevise as String
    Dim LigTxDebut as Long
    Etc….
    Mais cela ne fonctionne toujours pas.

    Auriez-vous une idée ?

    NB : J’aimerais trouver une solution sans utiliser le « .select »

    Merci par avance pour votre aide.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim DerLigTaux As Long
    TauxSheetName = "ModeOp" 'NOM DE FEUILLE
        LigTxDebut = 2
        ColTxDevise = "A"
    With Sheets(TauxSheetName)
        DerLigTaux = .Range(ColTxDevise & LigTxDebut).End(xlDown).Row
        .Range(ColTxDevise & LigTxDebut & ":" & ColTxDevise & DerLigTaux).Name = "Devise"
    End With

  3. #3
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Merci bien Rdurupt pour cette réponse brève mais efficace.

    Je n'avais pas pensé à remplacer le .[A2] par .Range(LaVariable).

    Je clôture le sujet.

    Bonne journée

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

Discussions similaires

  1. Erreur execution 424 Ojet requis
    Par toto92 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/03/2014, 16h01
  2. utilisation variable avec Call
    Par DD339 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 06/08/2009, 15h14
  3. Réponses: 7
    Dernier message: 13/03/2006, 15h39
  4. Utilisation d'une variable avec l'instruction 'USE'
    Par florantanplan dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 10/11/2005, 10h39
  5. Réponses: 16
    Dernier message: 07/04/2005, 11h36

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