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 :

Problème affichage feuille


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Par défaut Problème affichage feuille
    Bonjour,

    Le code suivant me permet après un double-click d'afficher un tableau dans une feuille de calcul. Il y a 28 tableaux dans ma feuille, et selon le numéro indiqué dans la case cliquée, le tableau correspondant s'affiche.

    Par exemple, si il y 16, alors le tableau 16 s'affiche.

    Cependant, je rencontre un problème. Le tableau 16 est bien sélectionné, mais il n'est pas visible à l'écran. Je suis obligé de remonter la feuille à l'aide du scrollbar du côté pour voir mon tableau.
    J'espère être clair.
    Je ne comprends pas d'où vient ce problème, pouvez-vous m'aider s'il vous plait ?

    Voici le code utilisé :
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    'on error GoTo fin
     
    If Not Intersect([A12:A39], Target) Is Nothing Then
        Cancel = True
            If Target(, 2).Value = "" Then MsgBox "Merci d'indiquer qui fait la réserve en" & " " & Target(, 2).Address(0, 0): Exit Sub
     
        Dim FNew As Worksheet, Wb As Workbook, Sh As Worksheet
        Dim Cible As String
        Dim NumLig As Variant
     
        NumLig = ActiveSheet.Range("D5")
        Cible = ("FL" & NumLig)
        Set Wb = ThisWorkbook
     
        On Error Resume Next
            Set FNew = Wb.Worksheets(Cible)
        On Error GoTo fin
            If Not FNew Is Nothing Then
            FNew.Activate
            FNew.Visible = True
            Else
                GoTo fin
            End If
     
            'on masque les feuilles inutiles
            For Each Sh In Wb.Worksheets
                If FNew.name <> Cible Then
                If FNew.name <> ("L" & NumLig) Then
                    FNew.Visible = xlSheetVeryHidden
                End If
            End If
            Next Sh
     
            FNew.Cells((Target.Value - 1) * 41 + 2, 3).Select
            'Application.GoTo reference:=
            End If
     
            FNew.Rows("1:1185").Hidden = True
                FNew.Range(FNew.Cells((Target.Value - 1) * 41 + 2, 3), FNew.Cells((Target.Value - 1) * 41 + 1 + 38, 3)).EntireRow.Hidden = False
                    FNew.Cells((Target.Value - 1) * 41 + 2, 3).Select
    fin:
            Set FNew = Nothing: Set Wb = Nothing: Set Sh = Nothing
    End Sub

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Essaie en ajoutant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.GoTo FNew.Cells((Target.Value - 1) * 41 + 2, 3), True

  3. #3
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Par défaut
    Merci, ça fonctionne mieux.

    Bon weekend

    Amicalement

    René

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 10
    Dernier message: 08/06/2009, 11h30
  2. problème affichage image
    Par thealpacino dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 30/05/2005, 13h56
  3. Problème affichage primitive
    Par goutbouyo dans le forum DirectX
    Réponses: 4
    Dernier message: 29/12/2004, 18h25
  4. [Plugin][VE] Problème affichage
    Par sebb84 dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 05/07/2004, 14h50
  5. [DOS] Problème affichage de DOS dans un Memo
    Par Pedro dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 25/06/2004, 13h31

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