Excel 2003

Résolu
Cecelle -  
gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je voudrai avoir une macro ou une méthode pour fusionner les cellules vides d'une colonne avec la cellule non-vide précédente :

cellule1
(vide)
(vide)
(vide)
cellule2
(vide)
cellule3
(vide)
(vide)
....

Merci
Configuration: Windows 2003
Firefox 3.5.1

6 réponses

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Je ne suis pas un grand fan des fusions car cela présente pas mal d'inconvénients, surtout en macro mais comme tu le demandes, voici une macro événementielle qui fait ce que tu souhaites.
    Private Sub Worksheet_BeforeRightClick(ByVal sel As Range, Cancel As Boolean)
    Cancel = True
    Dim cel As Range
    Dim adeb As String
    Dim afin As String
    For Each cel In sel
        If cel.Value <> "" Then
            Call fusion(adeb, afin)
            adeb = cel.Address
            afin = ""
        Else
            afin = ":" & cel.Address
        End If
    Next cel
    Call fusion(adeb, afin)
    End Sub
    Sub fusion(adeb, afin)
        If adeb <> "" And afin <> "" Then
            With Range(adeb & afin)
                .Merge
                .HorizontalAlignment = xlCenter
                .VerticalAlignment = xlCenter
            End With
        End If
    End Sub

    Après avoir copié la macro dans la feuille concernée(mode d'emploi éventuel), tu sélectionnes la plage à fusionner et avec un clic droit la fusion est faite.
    1
    1. Cecelle
       
      Peut-être pourras-tu m'aider pour mon problème vu que ça ne le résous pas ....
      Alors j'ai 3 feuilles avec des tableaux dont les colonnes sont comme expliqué ci-dessus (titre1 (vide) (vide) titre2 ...)
      Je voudrai regrouper ces données dans un tableau croisé dynamique.
      Le problème c'est que mes lignes de données font plusieurs lignes du tableur :
      -
      titre1 data data
      (vide) data2 data
      -
      titre2 data data
      (vide) (vide) data
      ....

      Lors du tableau croisé, il me groupe les data précédées de (vide) dans la catégorie (vide) et la fusion des cellules précédente ne résous pas le problème.

      Merci.
      0
  2. JvDo Messages postés 1924 Date d'inscription   Statut Membre Dernière intervention   859
     
    Bonjour à tous,

    reconstruit un tableau plein comme l'indique gbinforme.
    Pour cela, une formule toute simple dans la 1ère colonne dispo de la ligne 2 (là, j'ai choisi F2) : =SI(A2="";F1;A2) recopiée à droite sur autant de colonnes que nécessaire et vers le bas sur autant de lignes de données.
    Après, tes TCD fonctionneront.

    cordialement

    PS : n'oublie pas de recopier la première ligne!
    1
    1. Cecelle
       
      Merci !
      Autre question :
      Est-ce possible de modifier la source de donnée directement depuis le tableau dynamique ?
      0
  3. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    la fusion des cellules précédente ne résous pas le problème.

    Il me semble que c'est ce que je t'avais dit car je n'ai jamais vu résoudre un problème de données par la fusion. Celle-ci permet tout au plus de faire un tableau de présentation et n'est que néfaste pour le reste.

    Un TCD regroupe des données et si tu "t'amuses" à mettre des vides, il les considère comme tels : c'est la conception des données qui est sans doute à repenser mais pas la présentation en fusionnant.

    Donnes nous un exemple sur http://www.cijoint.fr/index.php si tu veux plus de précisions.
    0
    1. Cecelle
       
      Voila un exemple très simplifié :
      http://www.cijoint.fr/cjlink.php?file=cj200908/cijHyrC2cf.xl­s

      Le problème est qu'il y a beaucoup de données à traiter ^^
      0
  4. Cecelle
     
    Voila un exemple très simplifié :
    http://www.cijoint.fr/cjlink.php?file=cj200908/cijHyrC2cf.xls

    Le problème est qu'il y a beaucoup de données à traiter ^^
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Quoi que tu fasses, tu n'arriveras jamais avec cette structure de données à attribuer l'utilisateur titi au nom toto car excel est un tableur et non un logiciel de cartomancie. Les données doivent être répétées sur toutes les lignes et si tu ne veux pas les voir tu mets une MFC qui affiche en blanc les lignes identiques à la ligne supérieure.
    0
  7. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Un TCD est une analyse de données, ce n'est pas une feuille de saisie : les outils ont une certaine conception qu'il faut essayer d'utiliser. Ainsi tu ne découpes pas ta viande avec la cuillère et tu ne manges pas ton potage avec la fourchette.
    Pour un TCD, il faut l'utiliser selon sa destination et idem pour la saisie des informations.
    0