selectio de plage de données avec critéres

  • Initiateur de la discussion Initiateur de la discussion stef3
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

stef3

Guest
bonjour,

j'ai une petite question.
je définis une date d=17.07.2004.

comment je fais à dire a excel de me prendre la plage de donnée qui va (en feuil3) de CV115 à CV aligné sur le 17.07.2004 (en CS) c'est à dire CV119.

(mais la date n'est pas fixe je veux pouvoir modifier "d" et le code va me changer la plage de données). c'est a dire si je mets d=18.07.2004 et lance le code, il va me changer la selection CV115:CV120

merci
 

Pièces jointes

Re : selectio de plage de données avec critéres

Bonsoir Stef et bienvenu, bonsoir le forum,

Je te propose la macro ci-dessous. Un boîte d'entrée te demande de taper la date. Si la date existe dans la colonne CS, la plage correspondante est sélectionnée. Sinon, un message indique que la date renseignée n'existe pas...
Code:
Sub Macro1()
Dim d As String 'déclare la variable d (Date demandée)
Dim dt As Date 'déclare la variable dt (DaTe)
Dim r As Range 'déclare la variable r (Recherche)
 
début: 'étiquette
'définit la date demandée
d = InputBox("Veuillez indiquer la date de référence (jj/mm/aaaa).", "DATE")
If d = "" Then Exit Sub 'si la boîte d'entrée n'est pas renseignée ou si bouton "Annuler", sort de la procédure
On Error GoTo début 'si une erreur se produit, retourne au début du code via l'étiquette "début"
dt = CDate(d) 'définit la variable dt (une entrée non convertible en date provoque une erreur comme "30/02/2007" par exemple)
'définit la recherche r (recherche la date demandée dans la colonne CS de l'onglet "Feuil3"
Set r = Sheets("Feuil3").Columns(97).Find(dt, , xlFormulas, xlWhole)
If Not r Is Nothing Then 'condition : si il existe au moins une occurrence de la date
    Range("CV115:CV" & r.Row).Select 'sélectionne la plage correspondante
Else 'sinon
    MsgBox "Date non trouvée !" 'message
End If 'fin de la condition
End Sud
 
Re : selectio de plage de données avec critéres

Bonjour.
d'abord merci pour le code.
J'ai essayé mais je capte pas ce qui se passe, j'ai cherché un moment, mais quand je lance le code, j'ai le message erreur1004. (je capte pas ce que c'est ce message). Est.ce que je dois installer des composantes en plus sur excel...??
merci
 
Re : selectio de plage de données avec critéres

je viens de capter qqchose. suis vraiment pas calé en VBA.

j'avais copier la macro dan feuil1 et j'avais le mess d'erreur. je m'apercois qu'il faut la mettre dans module. si qq un peut m'expliquer pquoi?Merci
 
Re : selectio de plage de données avec critéres

Bonsoir le fil, bonsoir le forum,

Stef, il y a plusieurs composants VBA.
• Les Modules qui contiennent les macros en général.
• les Onglets (Feuil1 par exemple) contiennent les macro événementielles propres à l'onglet et seulement à cet onglet. Elles réagissent à des événement comme Change, SelectionChange, etc...
ThisWorkbook qui contient les macros événementielle du classeur. Workbook_Open, Workbook_BeforeClose, etc...
si tu crées une UserForm, il y a un composant UserForm1 qui te permet d'écrire les codes propres à cette UserForm...

Comme tu le vois, chaque composant est spécifique et il est vrai qu'un code bien écrit va bugger s'il n'est pas placé dans le bon composant.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour