Avatar billede excelbaskeren Nybegynder
28. oktober 2008 - 12:33 Der er 7 kommentarer

Vise en graf via en drop-down

Jeg har et regeark med en del grafer. Kan man få en bestemt graf vist (Aktiveret) via en drop-down? Graferne er placeret oveni hinanden og den relevante graf skal vises når brugeren vælger det tilhørende nummer i drop-down'en.
Avatar billede excelent Ekspert
28. oktober 2008 - 18:09 #1
Koden trikker på en datavalideringsliste i C1 med tallene 1;2;3;4;5 eller hvor mange grafer du nu har
Indsæt den i Arkets kodemodul

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Intersect(Target, Range("C1")) Is Nothing Then Exit Sub
ActiveSheet.ChartObjects(Target.Value).ShapeRange.ZOrder msoBringToFront
End Sub
Avatar billede excelbaskeren Nybegynder
28. oktober 2008 - 20:45 #2
Det ser ud til at være meget tæt på det jeg skal bruge! Forskellen er, at brugeren på et andet ark vælger et tal fra 0-6 i en kombinationsboks. Dette tal kan så lande i C1 på det ark hvor graferne er. Men hvis tallet 1 er valgt i kombinationsboksen skal graf 1 vises etc. Kan du fixe den? ;O) På forhånd MANGE tak!
Avatar billede excelent Ekspert
28. oktober 2008 - 21:19 #3
Så er det nok bedst at lade kombinationsboksen skifte
ret ark og evt combobox1 til aktuel

Private Sub ComboBox1_Change()
On Error Resume Next
Sheets("Ark2").ChartObjects(ComboBox1.Value).ShapeRange.ZOrder msoBringToFront
End Sub
Avatar billede excelbaskeren Nybegynder
28. oktober 2008 - 21:36 #4
Tak - men mine grafer hedder fx "Diagram 131" "Diagram 132" etc. Det er vel det der skal ind i ChartObjects(ComboBox1.Value)... 
hvordan får jeg det? Ja beklager - er lidt tynd i VB!
Avatar billede excelent Ekspert
06. november 2008 - 17:44 #5
Har enten ikke fået eller overset mail vdr. denne tråd
så lidt forsinket forslag kommer her
Min oprindelige tanke var at anvende diagrammets indeks nr. men
man kan også som du selv foreslår gøre sådan

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Intersect(Target, Range("C1")) Is Nothing Then Exit Sub
ActiveSheet.ChartObjects("Diagram " & Target.Value).ShapeRange.ZOrder msoBringToFront
End Sub
Avatar billede excelent Ekspert
09. november 2008 - 18:16 #6
?
Avatar billede excelbaskeren Nybegynder
09. november 2008 - 19:40 #7
Tak - jeg har via dit tidligere forslag fået løst problemet. Super!!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester