affichage de cellule

nico131

XLDnaute Junior
Bonjour,

voila j'ai un fichier corresspond a un planning sur l'anné soit 52 tableau... J'aimerais creer une userbox (je suppose) ou macro qui me permet de taper le numero de semaine que je veux modifier et que sa me l'affiche directement a l'ecran.

J'espere que je me suis bien fait comprendre????:confused:

cdlt nico
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : affichage de cellule

Bonjour Nico, bonjour le forum,

J'espere que je me suis bien fait comprendre????:confused:
C'est parfaitement clair mais sans fichier exemple, parfaitement inutilisable...
Imaginons que la première cellule tu tableau de la semaine désirée soit F24, le code ci-dessous place cette cellule en haut à gauche de l'onglet :

Code:
Sub Macro2()
Cells(24, 6).Activate
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollRow = 24
End Sub
Reste à savoir comment on peut coder pour atteindre telle ou telle semaine ?
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : affichage de cellule

Bonjour Nico,

sans voir ton fichier, il sera difficile voire impossible de deviner la structure du fichier et la disposition des tableaux

voir fichier joint

à+
Philippe

Edit: Salut Robert
 

Pièces jointes

  • 111.xlsm
    20.7 KB · Affichages: 33
  • 111.xlsm
    20.7 KB · Affichages: 29
  • 111.xlsm
    20.7 KB · Affichages: 30
Dernière édition:

Robert

XLDnaute Barbatruc
Repose en paix
Re : affichage de cellule

Bonjour le fil, bonjour le forum,

En pièce jointe ton fichier modifié avec un bouton Atteindre.
Le code :

Code:
Private Sub CommandButton1_Click()
Dim BE As String 'déclare la variable BE (Boîte d'Entrée)
Dim R As Range 'déclare la variable R (Recherche)

ActiveCell.Select 'enlève le focus au bouton
BE = InputBox("Tapez le numéro de la semaine", "AFFICHER") 'définit la boîte d'entrée BE
If BE = "" Then Exit Sub 'si bouton "Annuler" ou non renseignée, sort de la procédure
Set R = Columns(1).Find(BE, , xlValues, xlWhole) 'définit la recherche R (Recherche BE en entier dans la colonne 1)
If Not R Is Nothing Then 'condition : si il existe au moins une occurrence trouvée
    R.Offset(-1, 0).Select 'séleçtionne la cellule au-dessus de la première occurrence trouvée
    ActiveWindow.ScrollColumn = R.Column 'place la colonne de la première occurrence trouvée à gauche de l'onglet
    ActiveWindow.ScrollRow = R.Row - 1 'place la ligne au-dessus de la première occurrence trouvée en haut de l'onglet
End If 'fin de la condition
End Sub
Le fichier :
 

Pièces jointes

  • Nico_v01.xlsm
    22.6 KB · Affichages: 33

Staple1600

XLDnaute Barbatruc
Re : affichage de cellule

Bonjour à tous

Une autre possibilité avec Equiv (Match en VBA) et Application.Goto

Code:
Sub a()
Dim nsem, x&
nsem = InputBox("N° semaine?", "Choix semaine")
If nsem = vbNullString Then Exit Sub
x = 1 * Application.Match(nsem, Range("A:A"), 0)
Application.Goto Cells(x, 1), True
End Sub
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : affichage de cellule

Bonsoir le fil, bonsoir le forum,

Mon fichier je n'arrive pas a l'envoyer car il est trop gros
Ouais je sais, sont chiants les gros...

Il te suffit pourtant de :
• copier le code que je t'ai envoyé,
• créer un bouton issu des Contrôles ActiveX. Par défaut il s'appelle CommandButton1,
• tu double-cliques dessus et tu verras ces lignes :

Code:
Private Sub CommandButton1_Click()

End Sub
• tu sélectionnes ces deux lignes
• tu colles le code
• tu désactives le [Mode Création]
le tour est joué, tu cliques sur le bouton et ça marche...
 

Discussions similaires

Réponses
4
Affichages
729

Statistiques des forums

Discussions
312 389
Messages
2 087 933
Membres
103 677
dernier inscrit
Amrani