cs_socrate88
Messages postés2Date d'inscriptionlundi 1 juin 2009StatutMembreDernière intervention 1 juin 2009
-
1 juin 2009 à 10:03
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 2016
-
2 juin 2009 à 00:20
Bonjour à tous,
Je débute en VBA, et dans le cadre de mon stage, on me demande de regarder sur un planning de projets ceux qui ont duré plus de 5 jours, noter ces projets et le nombre de jours utilisés.
Comme la liste est assez longue, j'aimerais pouvoir faire quelque chose avec du VBA.
Par exemple, comme outil de vérification j'aimerais pouvoir faire ceci:
-je tape un mot-clé d'un projet
-Excel me cherche toutes les cellules contenant ce mot-clé
-il me les copie dans un classeur
Ce qui facilite le comptage
Ou plus simplement qu'il m'efface toute cellule contenant ce mot-clé, afin que je puisse voir si tous les projets ont été passés en vus.
Par contre j'ai du mal à faire ceci: comment dire à Excel ou VB de me chercher les cellules qui contiennent ce mot-clé (avec éventuellement d'autres mots dans la cellule) et non pas uniquement ce mot?
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 2 juin 2009 à 00:20
Bonsoir,
Ma version... à mettre dans un module...
Sub Macro1()
Dim Plage As Range
Set Plage = Application.InputBox("Sélectionnez une plage !", "Us se débrouille pour vous...", Type:=8)
Dim MotRechercher As String
MotRechercher = InputBox("Entrer la donnée à repérer", "Us")
If MotRechercher = vbNullString Then Exit Sub
Dim Cellule As Range
For Each Cellule In Plage
If InStr(1, Cellule.Value, MotRechercher) > 0 Then
Range(Cellule.Address).Select
With Selection.Interior
.ColorIndex = 6 'jaune
.Pattern = xlSolid
End With
End If
Next Cellule
End Sub
If bPartial Then
For i = 1 To iColStop
If Cells(i, sColumnLetter) Like "*" & sExpression & "*" Then
getWordAdress = i
If bSelectResult Then Cells(i,
sColumnLetter).Select
Exit For
End If
Next i
Else
For i = 1 To iColStop
If Cells(i, sColumnLetter) = sExpression Then
getWordAdress = i
If bSelectResult Then Cells(i,
sColumnLetter).Select
Exit For
End If
Next i
End If
End Function