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 :

Erreur d'éxecution '6' - Dépassement de capacité [XL-2013]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2017
    Messages : 13
    Par défaut Erreur d'éxecution '6' - Dépassement de capacité
    Bonjour si quelqu'un peut m'aidé sur cette erreur Erreur d'éxecution '6' - Dépassement de capacité

    voici mon programme :

    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
    Sub fusionnerV()
    Dim Lig As Byte, Deb As Byte
    'fige le défilement de l'écran:confort et rapidité
    Application.ScreenUpdating = False
    'empèche le message d'avertissement de fusion de cellules
    Application.DisplayAlerts = False
    For Lig = 1 To 100
    'Si cellule du dessous =cellule en cours
    If Cells(Lig, "F") = Cells(Lig + 1, "F") Then
    Deb = Lig 'mémorise la ligne de départ de fusion
     
    'Incrémente la ligne jusqu'à fin de condition =
    Do
    Lig = Lig + 1
    Loop Until Cells(Lig, "F") <> Cells(Lig + 1, "F") //////////////////// ligne qui pose probléme
     
    'fusionne le bloc des cellules adjacentes =
    With Range(Cells(Deb, "F"), Cells(Lig, "F"))
    .MergeCells = True
    .VerticalAlignment = xlCenter
    End With
    End If
    Next
     
    Application.DisplayAlerts = True
    'encadre la nouvelle présentation
    Range("F1:F100").Borders.Weight = xlThin
     
    End Sub

  2. #2
    Membre Expert
    Homme Profil pro
    Ingénieur
    Inscrit en
    Août 2010
    Messages
    707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2010
    Messages : 707
    Par défaut
    Bonjour,

    Ta boucle Do-loop doit probablement t'amener à dépasser 255, ce qui est la limite du type Byte que tu as choisi pour tes numéros de ligne.

  3. #3
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2017
    Messages : 13
    Par défaut
    merci pour ta reponse mais comment resoudre ce probléme j'ai déja esseyer integer la meme chose

  4. #4
    Membre Expert
    Homme Profil pro
    Ingénieur
    Inscrit en
    Août 2010
    Messages
    707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2010
    Messages : 707
    Par défaut
    Erreur 6 ou 1004?
    Potentiellement tu débordes du fichier car ta condition de boucle est risquée (continue pour les cases vides).

  5. #5
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2017
    Messages : 13
    Par défaut
    erreur 6 oui il deborde mais comment regle ça

  6. #6
    Membre Expert
    Homme Profil pro
    Ingénieur
    Inscrit en
    Août 2010
    Messages
    707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2010
    Messages : 707
    Par défaut
    Erreur 6 car Integer sature à 32767; à 32768 tu débordes.
    Tu peux mettre Long mais tu auras alors l'erreur 1004 car tu vas arriver en bout de fichier et dépasser le nombre de lignes de ton onglet Excel.
    C'est ta boucle While qu'il faut revoir ou supprimer. L'erreur originelle n'est pas le choix du type mais l'algo qui n'est pas bon. Pose-toi bien la question de ce que tu veux faire (et explique-le nous si tu veux plus d'aide).

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

Discussions similaires

  1. [XL-2007] Erreur d'éxécution 6 : dépassement de capacité
    Par puledro dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 26/01/2018, 17h24
  2. Réponses: 16
    Dernier message: 09/05/2016, 19h04
  3. [XL-2003] Erreur d'exécution 6 Dépassement de capacité
    Par Vadorblanc dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 08/11/2010, 21h43
  4. Erreur d'exécution '6': Dépassement de capacité
    Par XpFive dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 05/08/2009, 09h31
  5. Erreur d'éxecution '6' : dépassement de capacité
    Par mariafan dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 12/06/2008, 10h21

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