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 :

[VB-E] PB macro erreur d'execution


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de lolo_bob2
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    195
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 195
    Par défaut [VB-E] PB macro erreur d'execution
    Bonjour à tous

    Voila j'avais une macro qui fonctionnait que voila :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub remplacer() 
    For Each c In Range("E:E") 
    If c.Value <> "" Then 
    c.Value = Replace(c.Value, ",", ".") 
    c.Value = Replace(c.Value, " EA", "") 
    c.Value = Replace(c.Value, " M", "") 
    End If 
    Next c 
    Range("A:B").EntireColumn.Delete 
    Range("1:3").EntireRow.Delete 
    End Sub

    Je voudrais la modifier et rajouter cela en plus mais j'ai un problème
    j'ai une erreur d'execution 1004 qui me met une lgne en jaune

    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
    Sub remplacer() 
    Dim str As String 
    str = ActiveWorkbook.Names("Div.").RefersTo --> LIGNE EN JAUNE ICI 
    ActiveWorkbook.Names("Div.").Delete 
    ActiveWorkbook.Names.Add "Div", str 
     
     
    For Each c In Range("E:E") 
    If c.Value <> "" Then 
    c.Value = Replace(c.Value, ",", ".") 
    c.Value = Replace(c.Value, " EA", "") 
    c.Value = Replace(c.Value, " M", "") 
    End If 
    Next c 
    Range("A:B").EntireColumn.Delete 
    Range("1:3").EntireRow.Delete 
     
     
    End Sub

    Pouvez vous m'aider ?


    Merci beaucoup


    A+

  2. #2
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 151
    Par défaut
    tu peux pas détaillé avec des mots!!
    explique nous ce que tu veux faire et obtenir!

  3. #3
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Il semble que tu veuilles remplacer Div. par Div
    Pourquoi ne pas utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Application.Goto Reference:="Div."
    Tu supprimes le nom puis, comme tu es sur sur son adresse, tu le remplace par Div
    Avec RefersTo c'est plus élégant mais je ne l'utilise pas dans ce cas. Pour un seul remplacement, la différence de temps d'exécution n'est pas sensible.
    Ceci dit si bbil ou SilkyRoad ou AlainTech passent par là, tu auras ce que tu souhaites... alors patience

  4. #4
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut
    Le code est correct.

    Par contre, s'il n'existe pas de plage nommée Div. dans le classeur, tu obtiens l'erreur 1004.

    Voici un code qui marchera à tous les coups:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
      Dim str As String
      Dim oName As Object
      For Each oName In ActiveWorkbook.Names
        If oName.Name = "Div." Then
          str = oName.RefersTo
          MsgBox str
          oName.Delete
          ActiveWorkbook.Names.Add "Div", str
          Exit For
        End If
      Next oName
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  5. #5
    Membre confirmé Avatar de lolo_bob2
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    195
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 195
    Par défaut
    Ok merci

    Je vais essayer ton code demain matin

    Je te redis et si c'est ok je clique sur résolu pas de prob !

    A+

  6. #6
    Membre confirmé Avatar de lolo_bob2
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    195
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 195
    Par défaut
    Bonjour

    Je viens d'essayer la macro et cela ne fonctionne toujours pas

    J'écris bien Div. dans ma feuille excel, je lance la macro et rien ne se passe

    Comment cela se fait-il ?

    Je joint la feuille excel avec la macro pouvez vous essayer chez vous et me dire si cela fonctionne car là je me demande si ce n'est pas chez moi que cela plante....

    Merci beaucoup

    A+
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [XL-2007] Erreur d'execution '13' entre deux macro
    Par INFINITY100 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 10/05/2015, 06h07
  2. Réponses: 0
    Dernier message: 12/02/2015, 11h19
  3. Réponses: 1
    Dernier message: 02/05/2014, 01h24
  4. Réponses: 1
    Dernier message: 14/04/2012, 17h43
  5. erreur d'execution '13' dans une macro Excel lors du passage 2003->2007
    Par Bobsinglar dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 07/10/2008, 15h16

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