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 d'exécution '438' avec un Range [XL-2000]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Problème d'exécution '438' avec un Range
    Bonjour,

    Bon voilà j'ai un petit soucis pour récupérer l'Address d'un Range.

    Explication :

    Sur la première page de mon classeur j'ai des Zones de liste, créées à partir de la barre d'outil de Formulaire et j'aimerais mettre à jour leur contenu à la volée quand justement on ajoute/modifie/supprime des éléments de leur Plage source.

    Voici le code sensé faire cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Set feuille = ThisWorkbook.Worksheets("Formulaire de saisie")
     
        With feuille.Shapes("List Box 6")
            .ListFillRange = "Données_EPLE!" & CherchePlage(ThisWorkbook.Worksheets("Données_Secteur")).Address
            .LinkedCell = "$B$4"
            .MultiSelect = xlNone
            .Display3DShading = False
        End With
    Mon erreur vient à la fin de ma fonction CherchePlage qui est codée de la façon suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Public Function CherchePlage(ByVal feuilleSource As Worksheet) As Range
        Dim firstCell As Range, lastCell As Range
     
        With feuilleSource
            Set firstCell = .Cells(1, 1)
            Set lastCell = .Cells(.Rows.Count, 1)
            If IsEmpty(lastCell.Value) Then
                Set lastCell = lastCell.End(xlUp)
            End If
            Set CherchePlage = .Range(firstCell, lastCell)
        End With
    End Function
    La fonction est appelée, elle effectue tout son protocole et arrivé à End Function elle me jette à la figure un joli :

    Erreur d'exécution '438' : Propriété ou méthode non gérée par cet objet.

    J'avais déjà posté il y a peu pour un soucis avec ma Function et voilà qu'elle continue...

    Merci d'avance

  2. #2
    Invité
    Invité(e)
    Par défaut
    Après une petite modification du code Appelant la Function CherchePlage, cela fonctionne.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Set feuille = ThisWorkbook.Worksheets("Formulaire de saisie")
     
        feuille.Shapes("List Box 6").Select
     
        With Selection
            .ListFillRange = "Données_EPLE!" & CherchePlage(ThisWorkbook.Worksheets("Données_Secteur")).Address
            .LinkedCell = "$B$4"
            .MultiSelect = xlNone
            .Display3DShading = False
        End With
    Mais j'aimerais bien comprendre pourquoi là ça fonctionne alors que l'autre avant non???je suppose qu'il était juste question d'une sélection et de rendre le contrôle actif mais bon ça me laisse perplexe...

    Je met le sujet en Résolu mais si quelqu'un a une explication merci de me MP

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

Discussions similaires

  1. [OpenSceneGraph] problème d'exécution osg avec visual studio
    Par poilu933 dans le forum OpenSceneGraph
    Réponses: 5
    Dernier message: 26/11/2008, 13h02
  2. [SHELL] Problème d'exécution script avec Crontab
    Par Leeloo_Multiboot dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 05/06/2008, 17h59
  3. Problème d'exécution avec Visual C++ Express
    Par LaseLiep dans le forum MFC
    Réponses: 4
    Dernier message: 03/04/2006, 11h16
  4. Problème d'exécution avec Dec C++
    Par PNL dans le forum C
    Réponses: 20
    Dernier message: 02/10/2005, 04h59
  5. Problème à l'exécution avec wxWindows (compilé avec BCC55)
    Par ShootDX dans le forum Autres éditeurs
    Réponses: 5
    Dernier message: 14/11/2003, 19h04

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