Je veux savoir s'il existe un moyen de le faire conditionnellement dans Excel ou Open Office:
if the cell is empty then
the cell will have the same value as the cell above it
else
do nothing.
Devrais-je utiliser une macro pour cela? S'il vous plaît aidez-moi; J'ai très peu d'expérience avec Excel.
c 1 | 21/10/2011
c 2 |
c 3 |
c 4 | 24/10/2011
c 5 |
c 6 |
c 7 | 25/10/2011
c 8 |
c 9 |
c10 | 10/26/2011
Sélectionnez la plage contenant les cellules vides que vous devez remplir.
Cliquez sur Accueil> Rechercher et sélectionner> Aller à spécial…. Une boîte de dialogue Aller à spécial apparaîtra, puis cochez l'option Vides.
Cliquez sur OK et toutes les cellules vides ont été sélectionnées. Saisissez ensuite la formule «= B2» dans la cellule active B3 sans modifier la sélection. Cette référence de cellule peut être modifiée selon vos besoins.
Appuyez sur Ctrl + Entrée. Excel copie la formule correspondante dans toutes les cellules vides.
À ce stade, le contenu rempli est une formule et nous devons convertir les formels en valeurs. Sélectionnez ensuite toute la plage, cliquez avec le bouton droit de la souris sur Copier, puis appuyez sur Ctrl + Alt + V pour activer la boîte de dialogue Collage spécial…. Et sélectionnez l'option Valeurs dans Coller, puis sélectionnez Aucune dans Opération.
Puis cliquez sur OK. Et toutes les formules ont été converties en valeurs.
Dans Excel:
Si vous avez une table sur laquelle une personne a fusionné des cellules ou si vous copiez une table depuis un site HTML où il peut y avoir de nombreuses incohérences dans les données copiées, telles que des lignes vides qui devraient avoir la même valeur que le ligne précédente un moyen facile de résoudre ce problème est de passer à une colonne vide et de créer la formule suivante.
Cela suppose que vous avez un en-tête dans A1 et que A2 contient les premières données et une valeur de ligne valide.
Si seulement toutes les autres cellules sont vides, vous pouvez procéder comme suit:= if(A2="",A1,A2)
La fonction ci-dessus vérifie si A2 est vide. Dans l'affirmative, elle attribue la valeur de A1. Si ce n'est pas le cas, elle attribue la valeur de A2.
Cependant, s'il y a plusieurs lignes vides à remplir, il est préférable de procéder comme suit:
(supposons que la cellule dont vous voulez dupliquer la valeur dans toutes les cellules vides suivantes commence à A2, vous souhaitez définir manuellement les deux premières cellules de la colonne suivante, la colonne I: I est la première colonne vide de votre tableau)
Première étape: dans les cellules I2 et I3, assurez-vous que les bonnes valeurs sont présentes pour les lignes associées.
Deuxième étape: Dans la cellule I4, entrez la formule suivante:= if(A4="",if(A3<>"",A3,I3),A4)
La fonction ci-dessus vérifie si A4 est vierge, si elle est IS, elle vérifie si A3 n'est PAS vierge, si elle est effectivement NON, elle attribue la valeur de A3, si elle est également vide, elle attribue la valeur dans I3, enfin, si A4 n'était PAS vide, il attribue la valeur de A4.
Vous devrez faire glisser la formule manuellement (car il y a des lignes vides).
Toute ligne vide qui suit des données que vous ne souhaitez pas doit être facilement identifiable en triant la colonne par un champ clé.
Comme indiqué par Robert ci-dessus, vous avez affaire à des valeurs de formule. Vous ne pouvez donc pas simplement les déplacer, en écrasant leurs cellules source. Toutefois, si vous effectuez un collage "spécial", vous pouvez coller les valeurs directement sur vos cellules source.
C'est ce que j'ai écrit une fois:
Sub FillInBlankCellsInColumns()
'Go down and when you find an empty cell, put the value from the previous cell in there.
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
Dim MyCounter As Long
MyCounter = 0
For Each r In Selection
On Error Resume Next
If r.Value = "" Then
r.Value = r.Offset(-1, 0).Value
End If
Next
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub
Debra Dalgleish fournit à la fois le
sur son site sous Saisie de données Excel - Remplir les cellules vides dans la colonne Excel
utiliser Vlookup
=+VLOOKUP("Output",D1:G7,1)
Apple 1 Apple 2 Apple 7 Apple Mango 3 Mango =============== ====== col1 Col2 Formule
Vous pouvez également utiliser la formule suivante dans une nouvelle colonne:
D2: =IF(ISBLANK(C2),D1,C2)
C'est un peu plus "travail" mais puisque vous déclarez que vous n'êtes pas expérimenté dans Excel, l'écriture d'une macro peut être difficile.
Cordialement,
Robert Ilbrink