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 :

Fusion automatique conditionnée


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 2
    Par défaut Fusion automatique conditionnée
    Bonjour à tous...

    je vient de mettre le nez dans les macro et dans vba... c'est pas simple... voici ce que je souhaite faire :

    je souhaite fusionner automatiquement des cellules identiques dans des colonnes identifiées (c'est à dire uniquement dans les colonnes de mon choix : ici les colonnes F K et M et uniquement pour des cellules adjacentes verticalement).

    S'il était possible, je souhaiterai que cela se fasse dans une autre feuille afin de conserver la possibilité de trier et de calculer comme bon me semble dans le fichier "source"...


    A la lecture du forum j'ai vu qu'il était possible de s'orienter vers un tableau croisé dynamique mais je ne suis pas convaincu...

    j'ai tenté ce code sans succès :

    '
    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
    Mes valeurs sont dans la colonne A
    Dim Deb As Long
     
    Range("A1").Select
    Application.DisplayAlerts = False
    Deb = -1
    While Not IsEmpty(ActiveCell)
    If ActiveCell.Value = ActiveCell.Offset(1).Value Then
    If Deb = -1 Then Deb = ActiveCell.Row
    Else
    If Deb <> -1 Then
    With Range("A" & Deb & ":A" & ActiveCell.Row)
    .HorizontalAlignment = xlCenter
    .VerticalAlignment = xlCenter
    .MergeCells = True
    End With
    Deb = -1
    End If
    End If
    ActiveCell.Offset(1).Select
    Wend
    Application.DisplayAlerts = True

    et celle ci aussi...mais visiblement il y a une "erreur de compilation /erreur de syntaxe" à la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    C1 = Range('A' & i) = Range('B' & i)

    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    Sub Macro1()
    '
    ' Macro1 Macro
    ' Macro enregistrée le 06/02/2006 par ADSLHY
    '
     
    '
    Application.ScreenUpdating = False 'fige l'affichage de l'écran
    Application.EnableEvents = False 'Supprime certain message d'alerte windows
     
     
    For i = 2 To 10 'choisissez de quelle ligne a quel ligne doit ce faire les fusion
     
    'C1 & C2 sont les condition qui permettent de savoir si An=Bn et si Bn=Cn
    C1 = Range('A' & i) = Range('B' & i)
    C2 = Range('B' & i) = Range('C' & i)
     
    If (C1 = True And C2 = True) Then 'si C1 et C2 sont vrai alors fusion cellule ABCn
    Range('B' & i, 'C' & i).Select
    Selection.ClearContents
    Range('A' & i, 'C' & i).Select 'selection An;Cn
    With Selection 'fusion
    .HorizontalAlignment = xlCenter
    .VerticalAlignment = xlBottom
    .WrapText = False
    .Orientation = 0
    .AddIndent = False
    .ShrinkToFit = False
    .MergeCells = False
    End With
    Selection.Merge
    End If
    Next i
    Application.ScreenUpdating = True
     
    Application.EnableEvents = True
     
    End Sub
    Je me repère vaguement dans le code mais en fait j'y comprends rien...

    En Pièce Jointe un exemple de ce sur quoi je travaille...anonymé et réduit à quelques lignes...

    Merci de vos conseils...
    Fichiers attachés Fichiers attachés

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Bonjour, et bienvenue sur nos forums.

    1. A priori, je ne vois pas de lien direct entre fusion de cellules et tableau croisé dynamique

    2. Dans ton exposé, tu parles des colonnes K, L, M, alors que dans le code de ta macro, tu as un commentaire qui dit que tes données sont en A

    3. Ton fichier d'exemple est tellement bien "anonymé" que je n'ai rien compris de ce que tu souhaitais réalisé lorsque je l'ai ouvert...

    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 2
    Par défaut
    Bonjour,

    Effectivement mon fichier est moche...je refais un fichier type...

    Pour les codes oublions...c'estla première fois que je prends VBA en main...j'ai pris un truc fait pour un autre fichier pour le tester et j'ai pas touché aux variables... juste pour le faire tourner...mais comme il tourne pas....

    Pour le croisé dynamique je suis effectivement du même avis, ça ne me convient pas.... d'où le post...

    Je pense qu'avec les nouveaux docs ce sera plus clair...

    merci du temps passé à tenter de me comprendre...
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [AC-2003] Remplissage automatique Conditionne
    Par ZurpSing dans le forum VBA Access
    Réponses: 25
    Dernier message: 17/07/2009, 09h53
  2. fusion automatique avec word
    Par looping dans le forum Word
    Réponses: 5
    Dernier message: 27/03/2009, 12h09
  3. Fusion automatique données access sur openoffice writer
    Par HookerSeven dans le forum Access
    Réponses: 4
    Dernier message: 16/06/2008, 17h16
  4. Fusion automatique de cellules
    Par eddyG dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 30/10/2006, 18h00

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