Recherche de cellules vides et inventaire

Bonjour,

j'ai un fichier avec ce type de données:

A B

oui 4

oui 5

6

oui 7

8

attente 9

10

Je cherche à extraire tous les numéros de la colonne B qui son vides dans la colonne A. Dans cette exemple cela serait le 6, le 8 et le 10 que j'aimerais mettre dans une feuille et plus en verticale mais en horizontal.

J'ai créé un VB mais pas sure que cela soit bon et il ma manque la dernière ligne ....

Voici le VB:

Dim i&, x&, fin&, a&, n&

Feuil2.Range("C4:ZZ4").Clear

With Feuil6

fin = .Range("F" & Rows.Count).End(3).Row

n = 1

For i = 2 To fin

If .Cells(i, 6) > 0 Then

Feuil9.Cells(2, n) = .Cells(i, 7): n = n + 1

End If

Next i

End With

déjà, je vous remercie pour votre aide !

Paulo

Bonjour,

pour moi colonne A = 1 et B = 2, hors votre test est fait en colonne 6 ?!

Après j'ai pas l'habitude de noter ceci :

fin = .Range("F" & Rows.Count).End(3).Row

comme cela...

J'écris plutôt :

fin = .Range("F" & Rows.Count).End(xlUp).Row

Après je n'ai pas testé pour ce que fin vaut après votre code....

Pourquoi effacer les données de la feuille 2 avant l'exécution du code :

Feuil2.Range("C4:ZZ4").Clear

Alors que le code écrit les résultats sur la feuille 9 en horizontal à partir de la colonne 1 en ligne 2 :

Feuil9.Cells(2, n) = .Cells(i, 7): n = n + 1

Donc un petit fichier est quelquefois plus "efficace" que des explications ambigües...

@ bientôt

LouReeD

Bonjour le fil, bonjour le forum,

Comme LouReeD, j'ai trouvé le code peu cohérent avec ton exemple. Tu adapteras...

Sub Macro1()
Dim O1 As Worksheet 'déclare la variable O1 (Onglet 1)
Dim O2 As Worksheet 'déclare la variable O2 (Onglet 2)
Dim DL As Integer 'déclare la variable DL (Dernière Ligne)
Dim TV As Variant 'déclare la variable TV (Tableau des Valeurs)
Dim I As Long 'déclare la variable I (Incrément)
Dim J As Long 'déclare la variable J (incrément)
Dim TL() As Variant 'déclare la variable TL (Tableau des Lignes)

Set O1 = Worksheets("Feuil1") 'définit l'onglet O1
Set O2 = Worksheets("Feuil2") 'définit l'onglet O2
O2.Rows(1).ClearContents 'efface d'éventuelles anciennes données dans la ligne 1 de l'onglet O2
DL = O1.Cells(Application.Rows.Count, "B").End(xlUp).Row 'définit la dernière ligne éditée DL de la colonne B de l'onglet O1
TV = O1.Range("A1:B" & DL) 'définit le tableau des valeurs TV
J = 1 'initialise la variable J
For I = 1 To UBound(TV, 1) 'boucle sur toutes les lignes I du tableau de valeurs TV
    If TV(I, 1) = "" And TV(I, 2) <> "" Then 'condition : si la donnée ligne I colonne 1 de TV est vide et la donnée ligne I colonne 2 de TV n'est pas vide
        ReDim Preserve TL(1 To J) 'redimensionne le tableau des lignes TL
        TL(J) = TV(I, 2) 'récupère dans la colonne J de TL la donnée en ligne I colonne 2 de TV
        J = J + 1 'incrémente J (ajoute une colonne au tableau des lignes TL)
    End If 'fin de la condition
Next I 'prochaine ligne de la boucle
O2.Range("A1").Resize(1, UBound(TL)).Value = TL 'renvoie le tableau TL dans la cellule A1 redimensionnée de l'onglet O2
End Sub

Bonjour Paulo, le forum,

je t'ai répondu ici : https://forum.excel-pratique.com/viewtopic.php?p=668278#p668278

dhany

Bonjour le forum,

Avec une simple formule !

toutes les valeurs

Re,

Ou ?

toutes les valeurs

mbbp bonjour,

j'y aie bien pensé, mais je ne suis pas arrivé au bout...

C'est dingue ! Je n'arrive pas à avoir le gymnastique des formules pour arriver au résultat !

Pourtant j'essaie...

@ bientôt

LouReeD

Bonjour à tous,

En fait, les 2 exemples m'intéressent et merci !

Comme je suis nouveau sur ce forum,je suis un peu perdu avec les réponses....

Serait-il possible d'avoir les formules des exemples de mbbp ?

Meilleures salutations

Bonjour à tous,

oui, c'est bien dommage ! mbbp montre trop souvent des images où la formule de la barre de formule est incomplète !

donc on n'en voit que le résultat (souvent alléchant) ; c'est une variante du "supplice de Tentale" ?


@pferreira1961

je crois que tu n'as pas vu mon post d'hier à 18:27 : https://forum.excel-pratique.com/viewtopic.php?p=668278#p668278

si c'est toi qui a téléchargé mon fichier, qu'en penses-tu ?

dhany

Bonjour,

Oui j'ai vu le post et je t'en remercie. C'est parfait et exactement ce que je recherche.

Le point supplémentaire qui pourra me sauver beaucoup de temps, serait d'avoir le même VB mais avec une cellule supplémentaire avec le résultat complet dans une seule cellule séparé par une virgule.

L'exemple que j'aimerais obtenir est en attaché.

Je pense que pour vous cela n'est absolument pas compliqué ...

Cela dit, si je peux quand-même avoir les formules dans les 2 exemples fournis par mbbp.... cela me servira très très rapidement ....

Déjà je dis merci à tous.

Paulo

8pferreira.xlsx (9.43 Ko)

Salut LouReeD,

HGnlOn1sXVJ gym

Par contre si deux vides consécutifs...

@ bientôt

LouReeD

@pferreira1961

merci pour ton retour ! pour ta nouvelle demande :

6pferreira.xlsm (16.57 Ko)

même utilisation : vérifie que "Feuil2" est vide ;

va sur "Feuil1" ; fais Ctrl e ➯ travail effectué

à te lire pour avoir ton avis.

dhany

Par contre si deux vides consécutifs...

Bonne remarque.

Rechercher des sujets similaires à "recherche vides inventaire"