recherche sur plusieurs onglets

  • Initiateur de la discussion Initiateur de la discussion boudu
  • 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 !

boudu

XLDnaute Occasionnel
Bonjour au forum
J'ai un souci sur un fichier pour lequel PierreJean m'a déjà donné un bon coup de main mais je n'avais pas posé le probleme entier
En fait, je souhaite que le curseur se positionne sur la date du jour à l'ouverture mais cette date peut figurer dans plusieurs onglets
Voici un fichier test avec 2 onglets et la macro qu'a proposé PierreJean
Merci
 

Pièces jointes

Re : recherche sur plusieurs onglets

bonsoir boudu, le forum

Je te propose ce code comme solution. Normalement ca devrait sélectionner la feuille avec la date du jour, si c'est bien ce que tu veux.

Private Sub Workbook_Open()
Dim Wk As Worksheet
Dim n As Integer
For Each Wk In Worksheets
Wk.Activate
For n = 1 To 256
If Cells(1, n).Value = Date Then
Range(Cells(1, n), Cells(24, n + 1)).Select
ActiveWindow.ScrollColumn = n
Exit Sub
End If
Next n
Next Wk
End Sub


Bonne nuit à cette heure ci

Edit : Si tu veux que toutes les feuilles qui ont la date du jour se positionnent sur cette date à l'ouverture du classeur, enlève le Exit sub

P.O
 
Dernière édition:
Re : recherche sur plusieurs onglets

boudu à dit:
Bonjour au forum
J'ai un souci sur un fichier pour lequel PierreJean m'a déjà donné un bon coup de main mais je n'avais pas posé le probleme entier
En fait, je souhaite que le curseur se positionne sur la date du jour à l'ouverture mais cette date peut figurer dans plusieurs onglets
Voici un fichier test avec 2 onglets et la macro qu'a proposé PierreJean
Merci
Salut
Code:
Sub Aujoudhui_Test()
On Error GoTo Err_Aujoudhui_Test
Dim X As Integer
Dim Y As Integer
Dim Test_D As Date

Application.EnableEvents = False
Application.ScreenUpdating = False
Test_D = IIf(Weekday(Date, 2) > 5, Int(Date + 3 - Weekday(Date, 7)), Int(Date))


For X = 1 To Sheets.Count
    Sheets(X).Select
    For Y = 1 To Range("IV1").End(xlToLeft).Column
        If Int(Cells(1, Y)) = Test_D Then
            Cells(1, Y).Activate
            ActiveWindow.ScrollColumn = Y
            GoTo Sort_Aujoudhui_Test
        End If
    Next Y
Next X

Sort_Aujoudhui_Test:
    Application.EnableEvents = True
    Application.ScreenUpdating = True
    Exit Sub
Err_Aujoudhui_Test:
    MsgBox ("erreur relevée par Excel n°" & Err.Number & Chr(13) & Err.Description)
    Resume Sort_Aujoudhui_Test
End Sub
Si date = samedi ou dimanche => date du lundi suivant prise en compte
Tu as des macros automatiques => blocage des évènements pendant l'exécution de la ùacro => gestion des erreurs pour remettre la gestion des évènements, même en cas d'erreur.
ATTENTION me fiant aux deux feuilles données, je n'ai pas jugé utile de vérifier que les cellules de la ligne 1 sont toutes des dates. Si ce n'est pas le cas, il faut faire un test de validation de date pour chaque cellule si on ne veut pas avoir une erreur d'incompatibilité de date

Si t'as des questions n'hésite pas. Les question ne sont jamais bêtes, les réponses quelques fois peut-être. Mais je préfère faire rigoler que de ne pas comprendre.

A+
 
Re : recherche sur plusieurs onglets

Bonjour Gorfael, bqtr, le forum
Desolé de n'avoir pu repondre avant mais beaucoup de choses à faire
Les deux solutions semblent convenir
Je teste et je poste à nouveau si j'ai un souci comme le propose Gorfael
Bonne journée
 
- 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

Discussions similaires

Réponses
4
Affichages
312
Réponses
6
Affichages
450
Retour