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 :

Coller un tableau de variable dans un range retourne une erreur à partir d'un certain nombre de caractères


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Inscrit en
    Mars 2011
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 4
    Points : 5
    Points
    5
    Par défaut Coller un tableau de variable dans un range retourne une erreur à partir d'un certain nombre de caractères
    Bonjour à tous,

    voici un problème sur lequel je bloque malgré tous les forums visités :
    au sein d'une macro VBA, je construis un tableau puis je colle le résultat dans un range de cellules.
    - tant que mon tableau (défini comme Variant de 38 valeurs), n'a pas de valeurs trop lourdes en termes de nombre de caractères, pas de problèmes.
    - si l'une des valeurs, dépasse un certains nombre de caractères (que je n'ai pas réussi à déterminer précisément), j'ai le message d'erreur :" Erreur d'exécution '1004': Erreur définie par l'application de l'objet " ==> en somme, rien de très clair comme origine de la faute.

    la ligne de code qui amène l'erreur est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range(Cells(ii, 24), Cells(ii, 62)) = m_tableau4
    l'enregistrement qui pose problème est le n°18 : m_tableau4(18) qui dépasse 1500 caractères ==> len(m_tableau4(18)) = 1886

    tant que je suis inférieur à 800-900 caractères cela fonctionne (un de mes fichiers à une cellule à 800 caractères qui a bien été collée), sinon cela plante.

    si quelqu'un de part son expérience ou son expertise peut m'aider, ce serait avec joie

    par avance, merci de votre aide !
    Geoffroy

    PS : j'ai vérifié l'histoire du nombre de caractère limite dans une cellule, mais comme il est de 32768, je ne suis pas concerné.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 203
    Points : 14 354
    Points
    14 354
    Par défaut
    Bonjour,

    Il y a un bug connu avec XL2003 et les strings supérieurs à 911 caractères. Je ne retrouve malheureusement pas la page du contournement (sans doute scinder le string ?). Si je le retrouve, je te le communique.

    Bon, voila la référence :

    http://support.microsoft.com/kb/818808/fr

    Tu n'es pas beaucoup plus avancé; il faut couper le string.
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

Discussions similaires

  1. Utilisation d'une variable dans un Range
    Par GregoryGuillaume dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 23/08/2013, 15h49
  2. Utiliser une variable dans un Range
    Par Zamo21 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/04/2012, 17h44
  3. Tableau de variables dans une procédure stockée ?
    Par Seb33300 dans le forum Développement
    Réponses: 4
    Dernier message: 09/03/2009, 11h57
  4. colonne variable dans un range
    Par fxleo dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/01/2008, 11h57
  5. Mettre une variable dans un range
    Par guismoman33 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 05/11/2007, 14h05

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