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 :

Probleme transformation en numérique des variables au format texte


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Chargé d'études statistiques
    Inscrit en
    Octobre 2014
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Chargé d'études statistiques
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2014
    Messages : 63
    Par défaut Probleme transformation en numérique des variables au format texte
    Bonjour à tous,

    Je me permets de vous solliciter car une macro qui fonctionnait très bien jusqu'à maintenant bloque... Je ne comprends par pourquoi ma partie de code bloque...

    Dans cette partie je transforme en numérique des valeurs qui sont au format texte.

    Voici mon bout de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub Ajout_trie()
     
    der = ((Columns("H").Find(num1, LookIn:=xlValues, LookAt:=xlWhole).Row) - 1)
     
    ' Transforme en numérique des variables au format texte
     
       For Each ws In ActiveWorkbook.Worksheets
            With ws.Range("H2:H" & der)
                .NumberFormat = "0"
                .Value = .Value
            End With
        Next
    J'ai un message d'erreur :

    Erreur d’exécution 1004 :

    Impossible d'entrer une valeur nulle dans un élément ou un nom de champ dans un rapport TCD.

    Je tiens à préciser qu'une fois ce tableau consolidé. J'appelle une seconde macro pour mettre mes TCD à jour...

    Si l'un d'entre vous dispose d'une idée de mon éventuelle bêtise dans le code je suis preneur...

    Bonne soirée à vous..

  2. #2
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    der = ((Columns("H").Find(num1, LookIn:=xlValues, LookAt:=xlWhole).Row) - 1)
    Comme nous le répétons chaque jour (ou presque) sur ce forum ... il est dangereux de manipuler une propriété d'un Objet Range renvoyé par un Find, sans en tester au préalable l'existence !
    De même, ton Columns tout seul fait référence à la feuille active, il est hautement conseillé d'en affilier la feuille (et si besoin le classeur) d'appartenance


    Concernant ton problème en lui-même, je serai tenté de :

    - m'interroger : pourquoi tu fais un .value = .value dans ton TCD ? Je n'arrive pas à en comprendre l'utilité. En général on fait ça pour remplacer les formules par leur valeur
    - te demander : tu commences en ligne 2 ... sur quelle ligne sont situés tes noms de champs ?


    Je ne garantis pas que ces deux questions apporterons seules la compréhension exacte de ton problème, mais elles feront avancer le Schmilblick

  3. #3
    Membre confirmé
    Homme Profil pro
    Chargé d'études statistiques
    Inscrit en
    Octobre 2014
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Chargé d'études statistiques
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2014
    Messages : 63
    Par défaut
    Bonjour joe.levrai,

    Etant un débutant (ou un amateur) en code vba, je ne cache pas que je peine à saisir le début de tes propos. Penses tu pouvoir m'expliquer ce que tu souhaites me faire comprendre afin que je corrige de mauvaises habitudes de code ?

    Pour répondre à la suite de ton message. J'ai fait quelques essais hier :

    J'apporte quelques éléments d'infos supplémentaires :

    Mon onglet 1 : tableau de consolidation (apporte l'information provenant de plusieurs tableaux extérieurs = même format pour l'ensemble).
    Mes autres onglets : TCD qui sont alimentés par ce tableau dans l'onglet 1.

    Lors de la "mise en forme de ce tableau" (création de variables pour les TCD des prochains onglets qui sont par la suite actualisés par une autre macro), apparait ce problème. Si, je remets les TCD à vide, ou si je supprime les onglets, la macro fonctionne très bien.

    Pour répondre à tes questions :

    - m'interroger : pourquoi tu fais un .value = .value dans ton TCD ? Je n'arrive pas à en comprendre l'utilité. En général on fait ça pour remplacer les formules par leur valeur
    ==> Le but est de remplacer les valeurs textes par du numérique

    - te demander : tu commences en ligne 2 ... sur quelle ligne sont situés tes noms de champs ?
    ==> mes noms de champ sont en ligne 1.

    Je vais me permettre de mettre en PJ mon fichier. Cela permet d'y voir un peu plus clair.

    Il est ici : http://www.cjoint.com/c/EIlhrJcex85

    Bonne journée.

Discussions similaires

  1. Réponses: 3
    Dernier message: 01/10/2012, 11h38
  2. Probleme dans le passage des variables dans URL
    Par GarsDuCalvados dans le forum Langage
    Réponses: 16
    Dernier message: 04/01/2011, 14h02
  3. Probleme avec la configuration des variables d'environnement
    Par top_eagle dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 26/01/2009, 15h14
  4. Déclarer des variables de type texte
    Par Meidje dans le forum Débuter
    Réponses: 12
    Dernier message: 05/06/2008, 17h26
  5. [PHP-JS] Probleme de test avec des variables
    Par bodysplash007 dans le forum Langage
    Réponses: 1
    Dernier message: 02/05/2007, 17h39

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