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

Chercher dans la colonne la prochaine celulle non vide

K

Karim

Guest
Bonjour,

J'ai un fichier avec une cellule non vide, plusieurs cellules vides puis a nouveau une cellule non vide.
Ce que je veux faire, c'est connaitre l'adresse de la cellue non vide qui se trouve après les cellules vides.

A1=200
A2=
A3=
A4=
A5=150

sacahnt que le nombre decellules vides entre deux cellules pleines n'est pas constant, ça peut etre une fois 3 cellules vides, une fois 4...
J'ai essayé de faire ça:

Sub test()

Dim art As Range, ver As Integer, art2 As Range

Set art = Range("a2")
ver = 0

Do Until art.Offset(ver) <> ""
ver = ver + 1
Set art2 = art.Offset(1)
Loop

MsgBox art2

End Sub

Mais avec ça; la variable art2 est tjs vide alors qu'elle devrait avoir 150 comme valeur!

Si vous avez des idées, vous me sauvez la vie!
Merci d'avance!
 
C

CHti160

Guest
Oups La pièce jointe la voilà
A+++
Jean Marie
 

Pièces jointes

  • RechercheV1.zip
    7.1 KB · Affichages: 28
  • RechercheV1.zip
    7.1 KB · Affichages: 34
  • RechercheV1.zip
    7.1 KB · Affichages: 31
M

Michel_M

Guest
Bonjour Karim, Jean-marie

une macro qui te donne toutes les cellules non vides de la colonne "A";
avec des fonctions texte, on trouve la 2° référence (j'ai la flemme...)

Sub nonvide()

Dim var As String

var = Range("A1").SpecialCells(xlCellTypeConstants, 23).Address

MsgBox var
End Sub

Il y a d'autres variantes encore que ces 2 solutions (JM et MM) avec . par exemple .find

A+

Michel
 
K

Karim

Guest
merci de vos réponses mais cela ne résoud pas mon pb...
En effet, avac vos méthodes, il faut que je connaisse la plage dans laquelle chercher, et je ne la connnais pas, elle change à chaque fois, c'est pour ça que j'ai essayé avec une boucle.
Et la méthode Michel_M, elle ne va pas non plus car elle me donne toute les adresses des cellules non vides, et moi je ne veux que celle qui suit...
Merci d'avance
 
M

Michel_M

Guest
Re Karim

Je t'ai écrit que j'avais la flemme de chercher une fonction texte: tu peux chercher aussi, c'est pour toi le job

D'autre part :la deuxième cellule par rapport à quelle cellule non vide ?

Michel
 
C

CHti160

Guest
re "salut"
bonsoir "Michel_M"
c'est vraiment pas évident ,sans pièce jointe pour expliquer un peu
Car on croit avoir compri et on est à coté.Donc joindre une explication par fichier c'est mieux ;0)
A+++
Jean Marie
 
H

Hervé

Guest
bonsoir tout le monde


une idée :

Public Sub karim()
Dim cel As Range
For Each cel In Range("a2:a500")
If cel.Value <> "" And cel.Offset(-1, 0) = "" Then
MsgBox cel.Address
End If
Next cel
End Sub


donne l'addresse d'une cellule si la cellule au dessus est vide (laissé a1 vide).

salut
Hervé
 
K

Karim

Guest
Bonjour,

Voici comment j'ai fait, c'est tt simple en fait!:

----------
10









125
-----------

Sub TEST()

Dim A As Range, c As Range
Dim B As Integer

Set A = Range("A1")
B = 1
While A.Offset(B) = ""

B = B + 1
Set c = A.Offset(B)

Wend
MsgBox c
End Sub
 

Pièces jointes

  • test.zip
    6.2 KB · Affichages: 31
  • test.zip
    6.2 KB · Affichages: 33
  • test.zip
    6.2 KB · Affichages: 35

Discussions similaires

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