VBA pour selection cellule selon cellule active

Résolu
takita Messages postés 14 Date d'inscription   Statut Membre Dernière intervention   -  
takita Messages postés 14 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

dans mon fichier joint en cliquant sur un même bouton de commande je souhaite accéder à la cellule date de la feuille "Tache" qui correspond à la cellule active de la feuille "Calendrier".

j'ai fait un peu de bricolage, vous pourrez le constater dans les colonnes janvier / fevrier et mars.

je voudrais que cela soit plus propre. Votre aide me sera précieuse.

merci d'avance.

3 réponses

  1. takita Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
     
    En fait je ne vois pas comment insérer mon fichier.
    0
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
       
      Bonjour takita,
      Pour transmettre un fichier, il faut passer par un site de pièce jointe tel que cjoint.com

      Va sur ce site : https://www.cjoint.com/
      Clic sur parcourir,
      Cherche ton fichier,
      clic sur ouvrir,
      Clic sur "Créer le lien cjoint",
      Copier le lien,
      Revenir ici le coller dans une réponse...
      0
    2. takita Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
       
      Bonjour Pijaku,

      Merci encore. Cidessous le lien pour accéder à mon fichier

      https://www.cjoint.com/?0KonU1vsy2O
      0
    3. takita Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
       
      Bonjour,

      Je ne veux pas être embêtante,

      j'attends toujours des réponses si possible évidemment.
      0
      1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773 > takita Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
         
        Bonjour,

        Tu n'es pas embêtante.
        Mais :
        Par choix de son publicateur ou par opération de purge, ce document n'est plus hébergé par CJoint.

        Donc, le fichier n'est plus accessible.
        0
    4. takita Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
       
      désolée pour l'attente. j'ai perdu un proche trop proche et j'étais dans l'impossibilité de poursuivre.
      ci-joint le lien
      https://www.cjoint.com/c/EAipDhbC35c
      merci pour vos réponses.
      0
  2. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    Bonjour,

    Une macro de ce genre devrait correspondre à tes besoins :
    
    Sub getTacheFromSelectedDate()
    Dim colonne As Long
        colonne = ActiveCell.Column
    Dim ligne As Long
        ligne = ActiveCell.Row
        
    Select Case colonne
     Case 1, 2, 3
      'Janvier
      LigneColTache = 4
     Case 5, 6, 7
      'Février
      LigneColTache = 8
     Case 9, 10, 11
      'Février
      LigneColTache = 12
    '-----------------
    ' A completer avec les autres mois...
    '---------------
    
    End Select
    
      Sheets("TACHES").Activate
      Sheets("TACHES").Cells(LigneColTache, ligne - 3).Select
    
    End Sub
    


    Nb: j'ai fait pour Janvier/février/mars.. je te laisse faire pour les autres...
    Il suffit d'ajouter, pour chaque moi, un CASE (suivit des numéros de colonne correspondante dans ton calendrier...)
    et de mettre la variable LigneColTache en fonction de la "ligne" à afficher dans l'onglet Taches
    0
    1. takita Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
       
      Merci Jordane45 pour ta réponse qui est parfaitement ce que je recherche. Toutefois à partir du mois de juillet j'ai un petit problème. J'ai donc encore besoin de ton aide.

      https://www.cjoint.com/c/EAiuuqzzQyv
      0
  3. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    Modifie le code comme ceci :

    Sub getTacheFromSelectedDate()
    Dim colonne As Long
        colonne = ActiveCell.Column
    Dim ligne As Long
        ligne = ActiveCell.Row
        
    Select Case colonne
     Case 1, 2, 3
      If ligne < 34 Then
       'Janvier
        LigneColTache = 4
      Else
       'Juillet
       LigneColTache = 28
      End If
     Case 5, 6, 7
      If ligne < 34 Then
       'Février
        LigneColTache = 8
      Else
       'Aout
       LigneColTache = 32
      End If
     Case 9, 10, 11
      If ligne < 34 Then
       'Mars
        LigneColTache = 12
      Else
       'Septembre
       LigneColTache = 36
      End If
     Case 13, 14, 15
     If ligne < 34 Then
       'Avril
      LigneColTache = 16
      Else
       'Octobre
       LigneColTache = 36
      End If
     Case 17, 18, 19
     If ligne < 34 Then
       'Mai
      LigneColTache = 20
      Else
       'Novembre
       LigneColTache = 40
      End If
     Case 21, 22, 23
      If ligne < 34 Then
       'Juin
      LigneColTache = 24
      Else
       'Décembre
       LigneColTache = 44
      End If
    End Select
    
    ' on regarde à Quelle ligne on se trouve dans le classeur
    ' pour déterminer la date...
    If ligne < 34 Then
        ligneDeb = ligne - 3
    Else
        ligneDeb = ligne - 37
    End If
      Sheets("TACHES").Activate
      Sheets("TACHES").Cells(LigneColTache, ligneDeb).Select
    
    End Sub
    
    

    0
    1. takita Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
       
      Merci encore Jordane45. J'ai rectifié et tout fonctionne à merveille. Maintenant est-il possible qu'à l'ouverture du fichier que la cellule active soit celle de la date du jour ?
      https://www.cjoint.com/c/EAjpnnoox3o
      0
      1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830 > takita Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
         

        Maintenant est-il possible qu'à l'ouverture du fichier que la cellule active soit celle de la date du jour ?


        Oui.. mais là .. c'est une nouvelle Question...
        Donc je t'invite à mettre cette présente discussion en résolu .. puis à ouvrir une nouvelle discussion pour exposer cette nouvelle demande.
        0
    2. takita Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
       
      très bien.
      0