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

Excel Discussion :

fonction name.name probleme erreur 1004 [XL-2013]


Sujet :

Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 18
    Points : 11
    Points
    11
    Par défaut fonction name.name probleme erreur 1004
    bonjour
    J' utilise la fonction Name.Name pour trouver le nom d'une cellule dans une plage de cellule.
    Problème lorsque je tombe sur une cellule qui n'a pas de nom j'ai le message 'Erreur execution "1004"'

    Suis novice !!!

    merci pour vôtre aide

    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
    Sub extr()
    Dim col As Integer
    Dim lign As Integer
    Dim ligndata As Integer
    Dim valcherche As String
    Dim valcell As Variant
    Dim wsdata As Worksheet
    Dim wstest As Worksheet
     
    Set wsdata = ThisWorkbook.Worksheets("feuil3")
    Set wstest = ThisWorkbook.Worksheets("1")
     
    For lign = 1 To 24
        For col = 1 To 37
            For ligndata = 1 To 40
                valcherche = wsdata.Cells(ligndata, 1).Value 'recherche données dans data
                valcell = wstest.Cells(lign, col).Name.Name 'recherche nom de cellule
                    If valcherche = valcell Then 'comparaison
                    wstest.Cells(lign, col).Value = valcherche 'ecris valeur
                    End If
            Next ligndata
    autre:
        Next col
    Next lign
     
    End Sub

  2. #2
    Membre actif
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Janvier 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2011
    Messages : 202
    Points : 276
    Points
    276
    Par défaut
    Bonjour,

    essaye de remplacer par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    valcell = wstest.Cells(lign, col).Name.Name
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    valcell = wstest.Cells(lign, col).Address

  3. #3
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 674
    Points
    18 674
    Par défaut
    Bonjour.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Function CellName(ByVal Rg As Range)
             On Error Resume Next
             CellName = Rg.Name.Name
    End Function
    _______________ ____________________________________ ______________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 18
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par Gestionnaire_rh Voir le message
    Bonjour,

    essaye de remplacer par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    valcell = wstest.Cells(lign, col).Name.Name
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    valcell = wstest.Cells(lign, col).Address
    Ton code me renvoi "$A$1" mais pas le nom que je lui ai donné

    merçi de ton aide

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 18
    Points : 11
    Points
    11
    Par défaut name.name
    Avec la réponse de Marc_L

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Function CellName(ByVal Rg As Range)
             On Error Resume Next
             CellName = Rg.Name.Name
    End Function
    et en remplaçant
    valcell = CellName(wstest.Cells(lign, col))

    Ça fonctionne nikel

    Merci de vos réponses

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

Discussions similaires

  1. Affectation de valeur dans un fonction Erreur 1004
    Par ERGOL dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 31/10/2008, 17h37
  2. Probleme Erreur "1004
    Par Mamatt62 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 31/07/2008, 15h34
  3. Erreur 1004 fonction Workbook.add
    Par jacques64 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 26/05/2008, 15h18
  4. Réponses: 5
    Dernier message: 01/05/2007, 23h07
  5. fonction ActiveWindow.Name erreur objet requis
    Par Davik dans le forum VBA Access
    Réponses: 5
    Dernier message: 09/02/2007, 12h08

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