Excel 2003

Résolu/Fermé
Cecelle - 25 août 2009 à 17:23
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 26 août 2009 à 17:42
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
A voir également:

6 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 685
25 août 2009 à 23:51
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
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
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 856
26 août 2009 à 13:39
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
Merci !
Autre question :
Est-ce possible de modifier la source de donnée directement depuis le tableau dynamique ?
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 685
26 août 2009 à 10:40
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
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
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 685
26 août 2009 à 12:28
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
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 685
26 août 2009 à 17:42
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