XL pour MAC Créer des index pour déplacement rapide sur la même feuille

CM1090

XLDnaute Nouveau
Bonjour,
Je souhaiterais créer des index pour accéder rapidement à des colonnes sur la même feuille (calendrier) :
Mon calendrier va de 2022 à 2032 (colonnes). Je souhaiterais pouvoir accéder en 2022 comme en 2032 ou 2028 (janvier semble être le bon début pour chaque année😉😌) sans avoir à faire défiler toutes les colonnes !
J'ai créé des macros par année (méthode qui fonctionne mais que je trouve très lourde). Les boutons d'accès sont dans les colonnes A à D (figées), le calendrier démarrant à la colonne F en 2022.
Je sais qu'il existe d'autres solutions comme l'escalier horizontal (mode développeur); celui-ci ne me plaît pas trop.
J'ai déjà vu des systèmes de "tabulation", mais je ne maîtrise pas trop le sujet 😞.
Merci de m'éclairer sur la (ou les) façon(s) de procéder.
Christophe
 

Staple1600

XLDnaute Barbatruc
Re

Un dernier conseil (pour la route)
Je dois partir quérir quelques nourritures et boissons
Eviter autant que faire se peut les Select et Activate
Exemple: une de tes macros sans Select
VB:
Sub Delta()
' Delta Macro | Calcul Delta devis-facture
With Range("V11")
    .FormulaR1C1 = "=IF(RC[-4],RC[-4]-RC[-1],0)"
    .NumberFormat = "#,##0.00 [$CHF-fr-CH];[Red]-#,##0.00 [$CHF-fr-CH];""Pas de facture !"";@"
End With
End Sub
 

Staple1600

XLDnaute Barbatruc
Re

Ca y je me suis ressaisi
J'ai bu deux verveines corsées ;)

Mais c'est plus simple quand le fichier exemple ne contient que le nécessaire pour illustrer le problème rencontré.

A présent, je laisse mes petits camarades de jeu prendre le relais

(Faut que j'aille aux commissions, avec mon petit caddie à roulettes)
Oui c'est ma part du colibri pour la planète.
;)
 
Dernière édition:

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir à @CM1090 :),
Bonsoir @Lolote83, @Staple1600 (parti faire ses commissions), @Hasco (déjà couché) ;),

Un fichier simplifié et remanié car une présentation du calendrier qui ne me convenait pas :
  • tous les modules ont été supprimés (fichier plus concis et suffisant pour répondre à la demande)
  • le calendrier a été un peu réorganisé pour qu'au niveau de chaque colonne on voit précisément l'année, le mois, le type de jour et le numéro du jour ainsi que le numéro de semaine.
  • des MFC (for peu) colorent les en-têtes du calendrier de telle sorte que chacun des blocs (année / mois / semaine) ait une couleur différente du bloc adjacent
Le principe : à partir de l'année et du mois, on calcule le décalage à faire par rapport à la colonne de base K.

L'année sera saisie à la main (2 ou 4 chiffres) ou sélectionnée dans la liste déroulante (2 ou 4 chiffres)
Le mois sera saisi à la main (de 1 à 12) ou sélectionné dans la liste déroulante.

Le code dans le module de la feuille est :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim d
   If Not Intersect(Target, Range("i3:i4")) Is Nothing Then
      d = DateSerial(2000 + (Range("i3") Mod 100), Range("i4"), 1) - Range("k11")
      If d >= 0 Then Application.Goto Range("k1").Offset(, d), True
   End If
End Sub
 

Pièces jointes

  • CM1090- Calendrier- v1a.xlsm
    49.1 KB · Affichages: 3
Dernière édition:

Statistiques des forums

Discussions
314 738
Messages
2 112 339
Membres
111 513
dernier inscrit
jeanmarty