Macro Excel

Signaler
Messages postés
41
Date d'inscription
mardi 17 janvier 2006
Statut
Membre
Dernière intervention
14 octobre 2009
-
Messages postés
41
Date d'inscription
mardi 17 janvier 2006
Statut
Membre
Dernière intervention
14 octobre 2009
-
Bonjour,

Je possède un immense tableau qui fait dans les 2000 lignes, je voudrais créer une macro qui me permette d'aller à la date voulu, ex : j'ouvre mon fichier excel, une petite fenetre qui me demande la date(ex
Date=CDate(InputBox("Entrer une date")
) et qui ensuite affiche ou pointe sur la ligne ou la date correspond. Mon probleme vient du faite que je ne sais pas comment pointer sur la date choisie.

Cordialement,

Arnaud

11 réponses

Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
8
Bonjour,

Private Sub Workbook_Open()
Dim ContenuRech As String
ContenuRech = InputBox("Entrer le contenu à rechercher", "Us pour CS")
Cells.Find(What:=ContenuRech, After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
        xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
        , SearchFormat:=False).Activate
End Sub


Amicalement,
Us.
Messages postés
41
Date d'inscription
mardi 17 janvier 2006
Statut
Membre
Dernière intervention
14 octobre 2009

Boujour,

Merci pour ton aide, par contre je rencontre un problème lors de la recherche, il me met :"[b]Erreur d'exécution '91':
Variable de bloc With non définie/b

J'ai regardé dans le debug, les variables sont bonnes, mais je ne sais pas à quoi correspond la variable with.

Amicalement,

Arnaud
Messages postés
181
Date d'inscription
mardi 18 novembre 2008
Statut
Membre
Dernière intervention
4 février 2011

Hello,
Juste un petit conseil : l'utilisation d'un inputbox pour accueillir une donnée de type date peut être hazardeuse.
Mon conseil est d'utiliser une UserForm contenant un Monthview.
BR

USERRRQI115
Simple user
Great brain
Messages postés
41
Date d'inscription
mardi 17 janvier 2006
Statut
Membre
Dernière intervention
14 octobre 2009

Salut,

merci pour ton message, je vais d'abord faire en sorte que la premiere macro fonctionne, ensuite je pense réaliser avec Monthview pour évoluer la macro.

Sinon Us_31, d'ou peux venir l'erreur?

A+

Arnaud
Messages postés
2
Date d'inscription
lundi 12 octobre 2009
Statut
Membre
Dernière intervention
13 octobre 2009

les principales propriétes de la page de demarage SplashScreen pour devenire desactivé
Messages postés
41
Date d'inscription
mardi 17 janvier 2006
Statut
Membre
Dernière intervention
14 octobre 2009

pas compris
Messages postés
47
Date d'inscription
dimanche 16 mars 2008
Statut
Membre
Dernière intervention
14 octobre 2009
2
Bonjour,

En reprenant le code de us et en partant du principe que les dates se trouvent sur la feuille n°1.

Private Sub workbook_open()
Dim Contenurech As String
Dim Cellule As String
Contenurech = InputBox("entrer le contenu à rechercher", "us pour cs")
Cellule = Feuil1.Cells.Find(CDate(Contenurech), , , , , xlNext).AddressLocal
Feuil1.Range(Cellule).Activate
End Sub
(Attention au format de la date...)

Cordialement
Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
8
Bonsoir,

Évidemment, je n'ai fait que le programme de base pour répondre à la question précise : "Mon probleme vient du faite que je ne sais pas comment pointer sur la date choisie"

Entrer la date sous forme de texte (par inputbox) ne pose pas de problème particulier, mais bien sur le format doit être identique au format de date du tableau...

En effet, ensuite, l'emploi de MonthView comme le propose userrrqi115 sera beaucoup beaucoup plus pratique... et donnera un petit look pro du meilleur effet... (voir aussi les adaptations éventuelles)

Pour l'erreur With... elle se produit quand aucune donnée correspond à la recherche... Ce qui est logique, en fait. Une façon de traiter le problème est la prise en compte de l'erreur :

Private Sub workbook_open()
Dim contenurech As String
contenurech = InputBox("entrer le contenu à rechercher", "us pour cs")
On Error Resume Next
Cells.Find(what:=contenurech, after:=ActiveCell, LookIn:=xlFormulas, lookat:= _
        xlPart, searchorder:=xlByRows, searchdirection:=xlNext, MatchCase:=False _
        , searchformat:=False).Activate
If Err = 91 Then MsgBox "Aucune correspondance"
End Sub


nota : Le code de Joh76 souffre du même manque de traitement de la non correspondance...

Amicalement,
Us.
Messages postés
41
Date d'inscription
mardi 17 janvier 2006
Statut
Membre
Dernière intervention
14 octobre 2009

Bonsoir,

Merci pour vos réponse, je regarde demain et je vous tiens au courant.

Bonne soirée

Arnaud
Messages postés
41
Date d'inscription
mardi 17 janvier 2006
Statut
Membre
Dernière intervention
14 octobre 2009

Salut à tous,

Us merci pour ton aide, cela fonctionne bien, par contre j'ai un probleme, mes dates s'affiche sous la forme suivante "samedi 21 juillet 2009" (par exemple), mais dans ma cellule elle est auto incrémenté du genre (=B4+18) ce qui évite à chaque tableau de me recesire toutes les dates.

Donc avez-vous une solution, moi je regarde de mon coté en meme temps et j'essaye également d'incerer un monthview pour l'aspect pro de la chose.

Voilou,

Dans l'attente,

A+

Arnaud
Messages postés
41
Date d'inscription
mardi 17 janvier 2006
Statut
Membre
Dernière intervention
14 octobre 2009

Salut à tous,

Us merci pour ton aide, cela fonctionne bien, par contre j'ai un probleme, mes dates s'affiche sous la forme suivante "samedi 21 juillet 2009" (par exemple), mais dans ma cellule elle est auto incrémenté du genre (=B4+18) ce qui évite à chaque tableau de me re-saisir toutes les dates, car je crais 12 fichiers par an, et ainsi de suite.

Donc avez-vous une solution, moi je regarde de mon coté en meme temps et j'essaye également d'incerer un monthview pour l'aspect pro de la chose.

Voilou,

Dans l'attente,

A+

Arnaud