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 :

[XL-2003 & 2007] Problème pour redimensionner une plage nommée [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Avatar de panda31
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2003
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2003
    Messages : 670
    Points : 848
    Points
    848
    Par défaut [XL-2003 & 2007] Problème pour redimensionner une plage nommée
    Bonjour

    J'ai un souci pour redimensionner une plage nommée dans un classeur destiné à Excel 2003 et Excel 2007.
    Mon code est exécuté mais semble ne pas être pris en compte.
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
               For Each objNom In ActiveWorkbook.Names
     
                    'Scinde le nom pour récupérer :
                        'la référence : Tableau(0)
                        'et
                        'Le nom : Tableau(1)
                        If objNom.Name = definitionNameKeys Then
                            findNamedRangeKeys = True
                            tableau = Split(objNom.RefersTo, "!")
     
                            'Redimensionne le nom
                            'MsgBox objNom.Name + " " + tableau(0) + " " + tableau(1)
                            ThisWorkbook.Names.Add _
                                Name:=objNom.Name, _
                                RefersTo:=tableau(0) & "!" & _
                                range(tableau(1)).Resize(nbKeysREF).Address
                        End If
                        If objNom.Name = definitionNameValues Then
                            findNamedRangeValues = True
                            tableau = Split(objNom.RefersTo, "!")
     
                            'Redimensionne le nom                       
                            ThisWorkbook.Names.Add _
                                Name:=objNom.Name, _
                                RefersTo:=tableau(0) & "!" & _
                                range(tableau(1)).Resize(nbKeysREF).Address
                        End If
                        If findNamedRangeKeys = True And findNamedRangeValues = True Then
                            Exit For
                        End If
     
                Next objNom
    Je n'obtiens aucune erreur mais quand je vérifie ma plage nommée après exécution de la macro, rien n'a été changé.
    Auriez-vous une idée ?

    Merci d'avance

  2. #2
    Membre éclairé
    Homme Profil pro
    retraité
    Inscrit en
    Mai 2006
    Messages
    542
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Mai 2006
    Messages : 542
    Points : 712
    Points
    712
    Par défaut
    Bonjour à tous
    Bonjour panda31

    Si tu veux redimensionner une plage, il faut commencer par la détruire (supprimer) puis la redimensionner.
    Si j'ai bien compris ton pb.

    Eric

  3. #3
    Membre éclairé
    Avatar de panda31
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2003
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2003
    Messages : 670
    Points : 848
    Points
    848
    Par défaut
    Bonjour et merci.

    En fait, mon problème venait du ThisWorkbook. J'utilise ActiveWorkbook et ça marche.

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

Discussions similaires

  1. Problème pour récupérer une plage de données
    Par sincenono dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 17/12/2008, 10h55
  2. [ImageMagick] Problème dans le code pour redimensionner une image
    Par pierrot10 dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 08/06/2007, 14h06
  3. [VB.NET] problème pour piloter une appli. excel 2003
    Par Pynuch dans le forum Windows Forms
    Réponses: 13
    Dernier message: 16/11/2005, 13h02
  4. Réponses: 13
    Dernier message: 23/12/2004, 18h01
  5. Réponses: 3
    Dernier message: 29/08/2003, 10h57

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