XL 2016 convertir cellules fusionnées

philsogood

XLDnaute Nouveau
hello
j'ai un "petit" problème
on m'a fourni une base de données sur des équipements installés dans une usine
je dois retravaillé ce document sauf que la personne qui a créé la document a utilisé des cellules fusionnés ce qui empèche tout filtre/tri
ya 2000 lignes sur le fichiers --> le document est très difficilement exploitable en l'état
connaitriez vous une solution pour supprimer toutes ces cellules fusionnées et remplir les cases "nouvellement créées" par la valeur de la cellule fusionnée?
j'avais pensé à certain trucs de bricolage mais certaines cellules, dans les colonnes ou des cellules sont fusionnées, sont vides du coup je ne sais pas faire
le fichier est en PJ
Phil
 

Pièces jointes

  • extrait.xlsx
    9.8 KB · Affichages: 6

nat54

XLDnaute Barbatruc
Bonjour,
Pour le coup (tellement rare que je l'utilise), PowerQuery semble tout adapté car il existe une fonctionnalité "remplir" après avoir défusionné toutes les cellules en 2 clics : sélectionner tout l'onglet, puis annuler fusion
 

Cousinhub

XLDnaute Barbatruc
Bonjour,
Pour le coup (tellement rare que je l'utilise), PowerQuery semble tout adapté car il existe une fonctionnalité "remplir" après avoir défusionné toutes les cellules en 2 clics : sélectionner tout l'onglet, puis annuler fusion
Bonjour Nat,
J'y avais également pensé, mais comme certaines cellules sont vides, comment différencier les cellules vides avant dé-fusion des cellules vides d'origine?
Car la fonction "Remplir vers le bas" ne va pas faire la différence...
A moins de remplacer toutes les cellules vides par un caractère quelconque AVANT de charger le Tableau (un caractère bien distinctif, et avec une probabilité d'utilisation tendant vers 0), puis de remplacer ce caractère avant de restituer la requête...
Bref, faisable, mais il faudra auparavant effectuer cette manipulation de remplacement...
Bonne journée
PS, je ne peux que t'encourager à l'utiliser plus souvent 😉
 

Cousinhub

XLDnaute Barbatruc
Re-,
Un autre code VBA pour traiter les cellules fusionnées :
VB:
Sub de_fusion()
Dim Cel As Range, Plg As Range
For Each Cel In Range("A1:H" & Cells(Rows.Count, "A").End(xlUp).Row)
    If Cel.MergeCells Then
        Set Plg = Cel.MergeArea
        Cel.UnMerge
        Plg.Value = Cel.Value
    End If
Next Cel
End Sub
Bonne journée
 

philsogood

XLDnaute Nouveau
hello
comme le dit @Cousinhub il y a en effet des cellules vides (sinon j'aurai pu m'en débrouiller)
j'ai "essayé" de lancer ton script mais rien ne amrche?!? après c'est peut être moi (et mes doigts) qui déconne
@fanfan38 merci pour le ficheir, je vais regarder ça de plus, près, voir comment je peux extraire le truc et l'injecter dans mon fichier (le vrai fichier à 60 colonnes et plus de 2000 lignes)
pour la petite info, je ne suis pas nouveau sur ce forum, je le connais depuis au moins 10 ans je pense mais je ne viens pas souvent : XLS n'est pas mon coeur de métier ;)
Phil
 

Discussions similaires

Statistiques des forums

Discussions
312 207
Messages
2 086 232
Membres
103 161
dernier inscrit
Rogombe bryan