IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Centrer affichage d'une feuille sur la colonne de la date du jour.


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Septembre 2018
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Meuse (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Septembre 2018
    Messages : 18
    Par défaut Centrer affichage d'une feuille sur la colonne de la date du jour.
    Bonjour,

    Je souhaiterais creer une macro qui positionne l'affichage de ma feuille sur la colonne de la date du jour.
    j'ai bien trouvé plusieurs choses se rapportant a ma demande mais aucune de concluante.

    donc pour exemple :

    Si nous somme le jeudi 19 septembre en appuyant sur le bouton date du jour il faudrait que la cellule contenant la date du jour se positionne
    apres la colonne C (A,B,C etant figé) et cela pour chaque jour.

    Merci de votre aide
    Fichiers attachés Fichiers attachés

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Gillou55 Voir le message
    Bonjour,

    A tester :

    Dans un module standard :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    Sub PositionnerSurDateDuJour(ByVal ShEnCours As Worksheet)
     
    Dim I As Integer
    Dim AireDates As Range
     
        With ShEnCours
             .Activate
             Set AireDates = .UsedRange.Rows(1).Cells
             With AireDates
                  For I = 1 To AireDates.Count
                      If IsDate(AireDates(I)) Then
                         If AireDates(I) = Date Then
                            Application.Goto AireDates(I)
                            'Debug.Print AireDates(I)
                            Exit For
                         End If
                      End If
                  Next I
             End With
             Set AireDates = Nothing
        End With
     
    End Sub
    Si vous souhaitez atteindre la date du jour à l'ouverture du fichier, dans ThisWorkbook :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Sub Workbook_Open()
            PositionnerSurDateDuJour Sheets("Feuil1")
    End Sub
    Sinon, vous pouvez associer cette macro à un bouton.

  3. #3
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 241
    Par défaut
    Bonjour,

    Autre proposition , macro à associer au bouton "Date du jour"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub Position_sur_date_du_jour()
        Application.ScreenUpdating = False
        [A1].Select
        c = Application.Match(CDbl(Date), [E1:CL1], 1)
        ActiveWindow.ScrollColumn = c + 4
    End Sub
    Cdlt

  4. #4
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Septembre 2018
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Meuse (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Septembre 2018
    Messages : 18
    Par défaut
    Merci

    J'ai pris la solution d'ARTURO83 qui correspond exactement a ce que je recherchais,

  5. #5
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Septembre 2018
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Meuse (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Septembre 2018
    Messages : 18
    Par défaut
    Re-Bonjour

    Je reprends ce post que je croyais rapidement résolu,
    je travail sur mon PC avec XL 2013 mais en le transférant sur le PC de mon association ce matin je me suis aperçu que c'est XL 2010
    et la solution d' d'ARTURO83 ne fonctionne plus

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub Position_sur_date_du_jour()
        Application.ScreenUpdating = False
        [A1].Select
        c = Application.Match(CDbl(Date), [E1:CL1], 1)
        ActiveWindow.ScrollColumn = c + 4 ' j'ai en proposition     ActiveWindow.ScrollColumn = 4
    End Sub
    mais cela ne fonctionne plus, alors que faire pour que cela refonctionne sous XL 2010

    Merci d'avance

  6. #6
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 241
    Par défaut
    Bonjour,

    Votre calendrier sur la ligne 1 contient-il la date du jour?

    Curieusement, je suis sur Excel 2007, vous l'avez appliquez sur excel 2013 et cela fonctionnait, donc avec une version comprise entre les 2, il n'y a pas de raison que cela ne fonctionne pas sous 2010.

  7. #7
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Bonjour
    Citation Envoyé par Gillou55 Voir le message
    , alors que faire pour que cela refonctionne sous XL 2010
    La solution fonctionne sur toutes les versions excel de 2007 à 2016 au moins et tu peux même la simplifier en une seule ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub Position_sur_date_du_jour()
        ActiveWindow.ScrollColumn = Application.Match(CDbl(Date), Rows(1), 1)
    End Sub
    Si la date du jour est inexistante tu es positionné sur la colonne de la cellule numérique inférieure.
    si cela ne fonctionne pas c'est sans doute que tu n'es pas sur la bonne ligne.

Discussions similaires

  1. Réponses: 5
    Dernier message: 27/03/2013, 15h29
  2. Réponses: 9
    Dernier message: 24/04/2009, 16h08
  3. memoriser une colonne de cellule d'une feuille sur les autres feuilles
    Par iturria64 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/12/2007, 01h33
  4. [MySQL] affichage requete d'une colone sur plusieurs colonnes
    Par yohann26 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 19/10/2007, 16h11
  5. Centrer une feuille sur l'ecran ...
    Par Djedjeridoo dans le forum Composants VCL
    Réponses: 3
    Dernier message: 18/06/2003, 14h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo