Position graphique sous tableau croisé dynamique

jym77 Messages postés 8 Statut Membre -  
Frenchie83 Messages postés 2254 Statut Membre -
Bonjour,

J'ai actuellement un tableau dynamique croisé et qui dit tableau dynamique dit tableau de taille variable. J'ai également un graphique que j'aimerai positionner juste en dessous de ce tableau de taille variable, quelque-soit sa taille.

Ce problème n'est qu'esthétique: lorsque le tableau dynamique devient grand, mon graphique recouvre le tableau.
Y aurait il une macro pour que le graphique se positionne automatiquement sous le tdc.
Cordialement.

3 réponses

  1. Frenchie83 Messages postés 2254 Statut Membre 339
     
    Bonjour,

    Quel est le contenu de la dernière cellule en bas à gauche du TCD?
    0
    1. jym77 Messages postés 8 Statut Membre
       
      je joins 2 captures


      0
  2. Frenchie83 Messages postés 2254 Statut Membre 339
     
    Essayez ceci

    Sub Position_Graphique()
        Application.ScreenUpdating = False
        Set L = Columns(9).Find("Total général", LookIn:=xlValues)
        With ActiveSheet.ChartObjects(1) 'mettre le numéro de votre graphique
            .Left = Range(Cells(L.Row + 2, "A"), Cells(L.Row + 16, "F")).Left
            .Top = Range(Cells(L.Row + 2, "A"), Cells(L.Row + 16, "F")).Top
            .Width = Range(Cells(L.Row + 2, "A"), Cells(L.Row + 16, "F")).Width
            .Height = Range(Cells(L.Row + 2, "A"), Cells(L.Row + 16, "F")).Height
        End With
    End Sub
    


    Cdlt
    0
    1. jym77 Messages postés 8 Statut Membre
       
      bonsoir,
      Désolé, ça ne fonctionne pas.
      pour la 1ere ligne j'ai essayer de mettre Sub Position_Graphique1() ainsi que Graphique1
      vous mettez mettre le numéro de votre graphique, j'ai mis 'Graphique1
      0
  3. Frenchie83 Messages postés 2254 Statut Membre 339
     
    Bonjour,

    Ca marche, mais j'ai oublié de modifier le numéro de colonne après avoir fait les tests,
    (j'avais untilisé la colonne 9).
    Remplacez:
    Set L = Columns(9).Find("Total général", LookIn:=xlValues)

    par (si "Total général" se situe dans la colonne A)
    Set L = Columns(1).Find("Total général", LookIn:=xlValues)

    Cdlt
    0