A voir également:
- Vba : selection de cellules sous condition
- Mkdir vba ✓ - Forum VB / VBA
- Vba récupérer valeur cellule ✓ - Forum VB / VBA
- Excel compter cellule couleur sans vba - Guide
- Vba range avec variable ✓ - Forum VB / VBA
- Vba dépassement de capacité ✓ - Forum Excel
10 réponses
xav3601
Messages postés
3288
Date d'inscription
lundi 10 novembre 2008
Statut
Membre
Dernière intervention
2 mars 2016
311
21 janv. 2009 à 16:38
21 janv. 2009 à 16:38
Tu veux en faire quoi apres de ces lignes?
xav3601
Messages postés
3288
Date d'inscription
lundi 10 novembre 2008
Statut
Membre
Dernière intervention
2 mars 2016
311
21 janv. 2009 à 23:27
21 janv. 2009 à 23:27
Ok alors j'aurais une solution a te proposer; je te posterai ca demain dans la journée ;)
xav3601
Messages postés
3288
Date d'inscription
lundi 10 novembre 2008
Statut
Membre
Dernière intervention
2 mars 2016
311
22 janv. 2009 à 08:06
22 janv. 2009 à 08:06
alors tu peux utiliser cette fonction:
Set result = Range("A2:A10000").Find(What:=mois, LookIn:=xlValues, lookat:=xlWhole)
ligne = Sheets(Feuil1.Name).Rows.Find(What:=mois, LookIn:=xlValues, lookat:=xlWhole).Row
en remplacant le range par la zone dans laquelle tu veux chercher!
La premiere te permet de savoir si ta variable est presente et la deuxieme te renvoi la ligne
par la suite il faut rajouter une boucle autour afin qu'il te trouve toute tes occurences.
Set result = Range("A2:A10000").Find(What:=mois, LookIn:=xlValues, lookat:=xlWhole)
ligne = Sheets(Feuil1.Name).Rows.Find(What:=mois, LookIn:=xlValues, lookat:=xlWhole).Row
en remplacant le range par la zone dans laquelle tu veux chercher!
La premiere te permet de savoir si ta variable est presente et la deuxieme te renvoi la ligne
par la suite il faut rajouter une boucle autour afin qu'il te trouve toute tes occurences.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
mikebzh
Messages postés
127
Date d'inscription
samedi 20 décembre 2008
Statut
Membre
Dernière intervention
11 mars 2009
28
22 janv. 2009 à 08:34
22 janv. 2009 à 08:34
Coucou
Un truc du style pourrait-il te convenir ?
[code]
........
Dim donnees As Range
Dim nligne As Integer
Dim feuille As Worksheet
Set feuille = Worksheets("Resum")
Set donnees = Range(feuille.Cells(1, 1), feuille.Cells(1, 1).SpecialCells(xlLastCell))
For nligne = donnees.Rows.Count To 1 Step -1
If Month(donnees.Rows(nligne).Cells(1, 1).Value) = Month(mois) Then
donnees.Rows(nligne).Delete
End If
Next
........
[\code]
Reste à définir la variable mois
A plus.
Un truc du style pourrait-il te convenir ?
[code]
........
Dim donnees As Range
Dim nligne As Integer
Dim feuille As Worksheet
Set feuille = Worksheets("Resum")
Set donnees = Range(feuille.Cells(1, 1), feuille.Cells(1, 1).SpecialCells(xlLastCell))
For nligne = donnees.Rows.Count To 1 Step -1
If Month(donnees.Rows(nligne).Cells(1, 1).Value) = Month(mois) Then
donnees.Rows(nligne).Delete
End If
Next
........
[\code]
Reste à définir la variable mois
A plus.
xav3601
Messages postés
3288
Date d'inscription
lundi 10 novembre 2008
Statut
Membre
Dernière intervention
2 mars 2016
311
28 janv. 2009 à 16:00
28 janv. 2009 à 16:00
Set result = Range("A2:A10000").Find(What:=mois, LookIn:=xlValues, lookat:=xlWhole) fais une recherche sur toute la zone A2 a A100000 et cherche le contenu de la textebox mois
ligne = Sheets(Feuil1.Name).Rows.Find(What:=mois, LookIn:=xlValues, lookat:=xlWhole).Row une fois quîl a trouver il selectionne la ligne
ligne = Sheets(Feuil1.Name).Rows.Find(What:=mois, LookIn:=xlValues, lookat:=xlWhole).Row une fois quîl a trouver il selectionne la ligne
mikebzh
Messages postés
127
Date d'inscription
samedi 20 décembre 2008
Statut
Membre
Dernière intervention
11 mars 2009
28
28 janv. 2009 à 19:06
28 janv. 2009 à 19:06
Coucou,
Voilà quelques explications
[code]
........
Dim donnees As Range 'on définit notre future zone de travail
Dim nligne As Integer 'variable qui va nous servir à gérer une ligne
Dim feuille As Worksheet 'feuille de travail
Set feuille = Worksheets("Resum") 'on selectionne la bonne feuille
'maintenant on définit la zone de travail donnees cad toute la zone jusqu à la
dernière où on a des infos
Set donnees = Range(feuille.Cells(1, 1), feuille.Cells(1, 1).SpecialCells(xlLastCell))
'on va maintenant partir de la derniere ligne et remonter
For nligne = donnees.Rows.Count To 1 Step -1
'si la cellule 1 de la ligne correspond au bon mois
If Month(donnees.Rows(nligne).Cells(1, 1).Value) = Month(mois) Then
'alors on la détruit
donnees.Rows(nligne).Delete
End If
'on repart pour la ligne suivante
Next
'ici on a fini on a tout remonté
........
[\code]
Ici le seul truc que tu as a gérer c'est la variable mois car je ne sais pas comment tu as fait,
de plus je me sert de la fonction month() de visual basic car j'ai considéré que tes
premières cellules étaient du type date, mais cela n'est peut-être pas le cas.
Si tu as vraiment un soucis n'hésites pas à demander.
A plus.
Voilà quelques explications
[code]
........
Dim donnees As Range 'on définit notre future zone de travail
Dim nligne As Integer 'variable qui va nous servir à gérer une ligne
Dim feuille As Worksheet 'feuille de travail
Set feuille = Worksheets("Resum") 'on selectionne la bonne feuille
'maintenant on définit la zone de travail donnees cad toute la zone jusqu à la
dernière où on a des infos
Set donnees = Range(feuille.Cells(1, 1), feuille.Cells(1, 1).SpecialCells(xlLastCell))
'on va maintenant partir de la derniere ligne et remonter
For nligne = donnees.Rows.Count To 1 Step -1
'si la cellule 1 de la ligne correspond au bon mois
If Month(donnees.Rows(nligne).Cells(1, 1).Value) = Month(mois) Then
'alors on la détruit
donnees.Rows(nligne).Delete
End If
'on repart pour la ligne suivante
Next
'ici on a fini on a tout remonté
........
[\code]
Ici le seul truc que tu as a gérer c'est la variable mois car je ne sais pas comment tu as fait,
de plus je me sert de la fonction month() de visual basic car j'ai considéré que tes
premières cellules étaient du type date, mais cela n'est peut-être pas le cas.
Si tu as vraiment un soucis n'hésites pas à demander.
A plus.
Bonjour,
Je vous remercie pour vos reponses !
Ma variable mois et une string, qui initialiser dans "un programme principale" donc votre procedure doit avoir mois en paramètre en faite, seulement je n'utilise pas de données de type "month", mes cellules sont de type basic si je puis dire en faite,
mais je vous avoue que je suis assez perdue sur cette procedure...
PS : la solution de xav ne fonctionne pas chez moi non plus (lol)
voila voila
merci de votre aide
Je vous remercie pour vos reponses !
Ma variable mois et une string, qui initialiser dans "un programme principale" donc votre procedure doit avoir mois en paramètre en faite, seulement je n'utilise pas de données de type "month", mes cellules sont de type basic si je puis dire en faite,
mais je vous avoue que je suis assez perdue sur cette procedure...
PS : la solution de xav ne fonctionne pas chez moi non plus (lol)
voila voila
merci de votre aide
mikebzh
Messages postés
127
Date d'inscription
samedi 20 décembre 2008
Statut
Membre
Dernière intervention
11 mars 2009
28
4 févr. 2009 à 16:49
4 févr. 2009 à 16:49
Si tu peux poster ton fichier sur le site www.cijoint.fr et nous donner le lien, on verra ce que l'on peut faire.
Euh mettre le fichier entier je ne peux pas, car je fais cela dans le cadre de mon stage et non pas que les informations soit top secret mais je ne peux pas les mettre en ligne comme ça ...
Je peux par contre faire un screen de la totalité de mon code
http://www.cijoint.fr/cjlink.php?file=cj200902/cijLOWkHS1.jpg //screen
http://www.cijoint.fr/cjlink.php?file=cj200902/cijO7P5y2V.rtf //sous bloque note
Je peux par contre faire un screen de la totalité de mon code
http://www.cijoint.fr/cjlink.php?file=cj200902/cijLOWkHS1.jpg //screen
http://www.cijoint.fr/cjlink.php?file=cj200902/cijO7P5y2V.rtf //sous bloque note