Macro VBA

Fermé
odin13013 Messages postés 12 Date d'inscription mercredi 30 septembre 2009 Statut Membre Dernière intervention 1 octobre 2009 - 30 sept. 2009 à 10:37
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 1 oct. 2009 à 10:52
Bonjour,

Je dois finaliser une macro excel sous VBA mais je n'arrive pas à faire la fonction suivante:

si la cellule = 1 (dans mon tableau cette cellule se trouve à droite)
décaller à gauche de 5 colonnes (on tombe sur une cellule vide)
Puis descendre jusqu'a ce que la cellule soit non vide

Si quelqu'un peut m'aider please????

Merci par avance
Antony
A voir également:

3 réponses

salut ! voilà :)
ça te va ?

Sub test()

Sheets(1).Range("l'adresse de ta cellule").Select

If Range("l'adresse de ta cellule").Value = 1 Then

' tu vas 5 colonnes à gauche
ActiveCell.Offset(0, 5).Select

' on boucle tant que pas de cellule non vide
Do While ActiveCell.Value = ""
' ça c'est le code qui te fait descendre d'une ligne à chaque boucle
ActiveCell.Offset(1, 0).Select
Loop

End If


End Sub
0
odin13013 Messages postés 12 Date d'inscription mercredi 30 septembre 2009 Statut Membre Dernière intervention 1 octobre 2009
1 oct. 2009 à 10:23
Hello,

Merci pout ta réponse!!!

En faite voila le code avant la fonction que je souhaite mettre:

For Each n In Sheets("feuil2 (2)").[g3:g2500]

If (Sheets("feuil2 (2)").Cells(k, 7).Value <> "") Then

If (Sheets("feuil2 (2)").Cells(k, 7).Value < v Or Sheets("feuil2 (2)").Cells(k, 7).Value > w) Then
Sheets("feuil2 (2)").Cells(k, 7).Interior.ColorIndex = 3
'et la y'aurait ton code

Du coup qd je fais Sheets(1).Range("l'adresse de ta cellule").Select Comment je fais pour donneer l'adresse de la cellule?

Ah oui aussi...lol une foi que je suis sur la cellule non vide comment je fais pour récuperer la valeur de cette cellule pour la mettre par exemple sur feuille deux ??

Mici a toi !!!!!
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 306
1 oct. 2009 à 10:52
Bonjour

macro à adapter (ton code en réponse m'a embrouillé). Je fais ci dessous la recherche sur lla feuille1 et je transfère le résultat en feuille 2
Option Explicit
Const col As Byte = 1 'n°colonne du 1 à adapter
Sub colloneàgauche()
Dim lig1 As Long, lig2 As Long
Dim valeur

With Sheets(1)
    lig1 = .Columns(col).Find(1, .Cells(65536, col)).Row
    valeur = .Columns(col + 5).Find("*", .Cells(lig1 - 1, col + 5))
End With
Sheets(2).Range("A1") = valeur

End Sub

merci de mettre tes codes dans la balise "code" ( l'icone 4° à droite)
0