Sélection d'un onglet et d'une plage de cellules en fonction d'un calendrier en VBA

Julie-F

XLDnaute Occasionnel
Bonsoir à tous,

J'ignore s'il est possible à partir d'un calendrier en VBA (merci à la personne qui l'a conçu) de choisir une date et suivant la date choisie de se rendre sur l'onglet du mois retenu en limitant la vue à 3 colonnes (1ere colonne = A, la 2eme colonne = date choisie et la 3eme colonne = colonne se situant à gauche de la date choisie)

Ma demande est obscure, aussi je joins un fichier qui je l'espère sera plus clair.

Pouvez-vous me dire si c'est réalisable sous Excel ?
 

Pièces jointes

  • test.zip
    22.4 KB · Affichages: 35
  • test.zip
    22.4 KB · Affichages: 36
  • test.zip
    22.4 KB · Affichages: 33

Julie-F

XLDnaute Occasionnel
Re : Sélection d'un onglet et d'une plage de cellules en fonction d'un calendrier en

Bonjour Banzai,

Je ne suis pas très au fait des règles mais il me semble qu'en rugby on dit que l'essai a été transformé. :eek:
Un grand merci à toi :D
- J'ai un petit souci. Sur ma feuil1, j'ai également d'autres boutons qui me permettaient d'afficher que 5 colonnes.
Exemple pour Janvier, afficher de la colonne BP à BS qui maintenant ne peuvent plus apparaître mais je crains que cela ne vienne de ma macro très basic
- Une autre question : est-il possible lors du choix de la date de se placer sur la ligne 4 de la 3eme colonne (qui correspond à la date choisie) -- exemple pour le 3 janvier : placer le curseur en G4 ?
 
Dernière édition:

Banzai64

XLDnaute Accro
Re : Sélection d'un onglet et d'une plage de cellules en fonction d'un calendrier en

Bonjour
Je ne comprends pas tout
j'ai également d'autres boutons qui me permettaient d'afficher que 5 colonnes.
Où sont les boutons et quelles colonnes tu dois afficher ?

Exemple pour Janvier, afficher de la colonne BP à BS

le 31 janvier s'arrête en colonne BK

cela ne vienne de ma macro
Laquelle ?

exemple pour le 3 janvier : placer le curseur en G4
Si c'est la 3ème case en dessous du 1 janvier c'est G5

Le mieux tu fournis un fichier avec ce tu veux exactement

Bonne journée
 

Julie-F

XLDnaute Occasionnel
Re : Sélection d'un onglet et d'une plage de cellules en fonction d'un calendrier en

Rebonjour Banzai,

Ci-joint le fichier modifié avec 2 boutons uniquement pour exemple
C'est vrai que cela évite les longues explications pas toujours très claires. :eek:
Et concernant ta macro, est-il possible lors du choix de la date de se placer sur la ligne 4 de la 3eme colonne (qui correspond à la date choisie) -- exemple pour le 3 janvier : placer le curseur en G4 ?

Merci d'avance pour le temps consacré.
 

Pièces jointes

  • test2.zip
    26.2 KB · Affichages: 31
  • test2.zip
    26.2 KB · Affichages: 35
  • test2.zip
    26.2 KB · Affichages: 29
Dernière édition:

Julie-F

XLDnaute Occasionnel
Re : Sélection d'un onglet et d'une plage de cellules en fonction d'un calendrier en

GENIAL !!!

Dans l'hypothese où je souhaiterais mettre une protection sur les différentes feuilles ceci afin de pouvoir déplacer le curseur que sur les seules cellules non verrouillées des colonnes affichées à l'écran, peux-tu m'indiquer à quel niveau, je dois le faire apparaître ? :eek:
Mais je ne voudrais pas abuser de ton temps.
Merci :D
 

Julie-F

XLDnaute Occasionnel
Re : Sélection d'un onglet et d'une plage de cellules en fonction d'un calendrier en

Oups !!!
J'ai un pb lorsque je teste la macro sur mon fichier.
Un message d'erreur d'exécution 1004 "Impssible de définir la propriété Hidden de la classe Range.
Le débogeur se place sur la ligne Sub Bouton4_QuandClic()
.Columns("A:IV").Hidden = True

J'ai pourtant fait comme toi en modifiant également la macro "GO" mais rien n'y fait.
Alors qu'en mettant à la place B et non A, çà fonctionne bien que cette fois, la colonne reste toujours visible alors qu'elle ne devrait pas.
 

Banzai64

XLDnaute Accro
Re : Sélection d'un onglet et d'une plage de cellules en fonction d'un calendrier en

Bonjour
Désolé j'étais occupé

Je pense que tu as voulu protéger ta feuille
Donc dans toutes les macros il faut que tu insères .Unprotect et .Protect
Exemple Protection sans mot de passe

VB:
Sub Go()
Dim Nom As String
Dim Cl As Integer
Dim Lg As Long

  Nom = Format(Range("E15"), "mmmm yyyy")
  Lg = Day(Range("E15"))
  Cl = (Lg * 2) + 1
  On Error Resume Next
  Sheets(Nom).Visible = True
  If Err.Number > 0 Then
    MsgBox "Page " & Nom & " inexistante"
    Exit Sub
  End If
  On Error GoTo 0
  With Sheets(Nom)
    .Unprotect
    .Columns("A:IV").Hidden = True
    .Columns(1).Hidden = False
    .Columns(Cl - 1).Hidden = False
    .Columns(Cl).Hidden = False
    .Select
    .Protect
  End With
  Application.Goto Cells(Lg + 1, Cl)
  
End Sub


VB:
Sub Bouton4_QuandClic()
' Synth 1
  With Sheets("janvier 2011")
    .Columns("A:IV").Hidden = True
    .Columns("BO:BS").Hidden = False
    .Select
    .Protect
  End With
End Sub

Sub Bouton5_QuandClic()
' Synth 2
  With Sheets("février 2011")
    .Unprotect
    .Columns("A:IV").Hidden = True
    .Columns("BI:BM").Hidden = False
    .Select
    .Protect
  End With
End Sub
 

Julie-F

XLDnaute Occasionnel
Re : Sélection d'un onglet et d'une plage de cellules en fonction d'un calendrier en

Bonjour
Désolé j'étais occupé

......................

Tu plaisantes ???? Comment peux tu être désolé d'être occupé alors que c'est vraiment gentil à toi de me consacrer tout ce temps.
C'est moi qui devrais être désolée de poser de telles questions par ignorance.

Je regarde pour la protection à ajouter dans les différentes macros mais je crains que ce pb ne provienne pas de çà (mon fichier n'était pas encore protégé)
 

Julie-F

XLDnaute Occasionnel
Re : Sélection d'un onglet et d'une plage de cellules en fonction d'un calendrier en

Bonjour

le mieux c'est que tu envoies le fichier qui te pose problème
Parce que à part la protection je ne vois pas pour le moment ce qui gène
Bonne journée

Oui, c'est ce qu'il y a de plus simple mais le fichier contient des données confidentielles.
Je pense que le pb vient du fait que j'ai également des infos + boutons (option ne pas déplacer ni dimensionner avec les cellules) en colonne A sur les onglets mois.:eek:
Mais comme je souhaite faire apparaître que les colonnes ("BI:BM") ou ("BO:BS"), çà ne fonctionne pas. :(:(
Il ne m'est pas possible de placer ces boutons ailleurs (pr raison "d'architecture" du fichier)

La solution serait peut être, même si ce n'est pas très académique, de prendre la zone ("B:IV") et non Columns("A:IV").Hidden = True et parallelement de bloquer le scroll horizontal (ascenseur en bas) totalement à droite (de façon à ne pas voir la colonne A à l'écran) pour tous les boutons synth. et totalement à gauche lors de l'utlisation du bouton GO, mais je ne sais pas si c'est possible.
 
Dernière édition:

Discussions similaires