Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Macro Remplir cellule vide d'un tableau

linebich

XLDnaute Junior
Bonjour Forum , j’espère que vous allez bien
j'ai un problème d'un tableau avec nombre de ligne non fixe ( qui peut changer ) , qui peut contenir des cellule non vide par omission , est ce possible de creer une macro qui affecte a chaque cellule vide ( l’entête du tableau associé a cette cellule est non renseigné)
je m'explique
pour une colonne "Identifiant"
les cellules vide deviennent " Identifiant non renseigné"
et ceci pour tout les colonnes j’espère que vous aller comprendre mon but avec mon fichier
Voici un fichier contenant l'exemple
Merci pour tout retour de vos parts.
Cordialement .
 

Pièces jointes

  • test.xlsx
    17.2 KB · Affichages: 13
Solution
Re,
C'était pas clair.
En PJ avec une macro. J'ai conservé la MFC quand même. A supprimer si elle ne vous va pas.
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("C5:F14")) Is Nothing Then       ' adapter C5:F147
        For Each c In Range("C5:F14")                               ' adapter C5:F147
            If c = "" Then
                c.Value = Cells(5, c.Column) & " non renseigné."    ' 5 est le N° de ligne où se trouvent les titres.
            End If
        Next
    End If
End Sub

linebich

XLDnaute Junior
Rebonjour
Merci beaucoup pour ton retour Sylvanu
en fait mon objectif c'est de voir au niveau des tableau croisé dynamique qu'il ya des omissions des donnée ( au lieu de "Vide") au niveau de ma base ( donc a revoir pour completer avant de passer au statistique des TCD )
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
C'était pas clair.
En PJ avec une macro. J'ai conservé la MFC quand même. A supprimer si elle ne vous va pas.
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("C5:F14")) Is Nothing Then       ' adapter C5:F147
        For Each c In Range("C5:F14")                               ' adapter C5:F147
            If c = "" Then
                c.Value = Cells(5, c.Column) & " non renseigné."    ' 5 est le N° de ligne où se trouvent les titres.
            End If
        Next
    End If
End Sub
 

Pièces jointes

  • test (28)V2.xlsm
    15.7 KB · Affichages: 5

job75

XLDnaute Barbatruc
Bonjour linebich, sylvanu,

Problème bancal...

D'où viennent les noms Milen, Norine, lelly en colonne client du Résultat ?

De plus E12 est vide, pourquoi le résultat n'est pas "non renseigné" ?

A+
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…