Avatar billede compilos Nybegynder
30. november 2005 - 16:02 Der er 7 kommentarer og
1 løsning

Referer til Object i ark, fra addin

Hejsa

Jeg har et excel ark med et chart object, - objectet ville jeg gerne kunne ændre inde fra min en function i mit addin.  -  Og det er der jeg har lidt problemer!
Har optaget en macro som i kan se, - der viser hvordan workbooken håndtere objectet  -  men hvordan f... skal koden se ud inde fra mit addin??

Sub Macro4()
    ActiveSheet.ChartObjects("Chart 117").Activate
    ActiveChart.PlotArea.Select
    ActiveChart.ChartArea.Select
    ActiveSheet.Shapes("Chart 117").IncrementLeft 2.25
    ActiveSheet.Shapes("Chart 117").IncrementTop -39.75
    ActiveChart.SeriesCollection(1).Values = "={2,2,2,12,2,1.1}"
    ActiveChart.PlotArea.Select
End Sub

/Compilos
Avatar billede bak Forsker
30. november 2005 - 19:30 #1
Denne har jeg sat ind i en addin

Public Sub TestDiagram(schrt, svarr)
Dim x As ChartObject
Set x = ActiveSheet.ChartObjects(schrt)
    x.RoundedCorners = True
    x.ShapeRange.IncrementLeft 2.25
    x.ShapeRange.IncrementTop -39.75
    x.Chart.SeriesCollection(1).Values = svarr
End Sub


denne kode bruger jeg i mit ark til at kalde den med

Sub InsertValues()
    Dim a As String
    a = "{6, 2, 3, 4, 5, 6, 8}"
    testdiagram "Diagram 1", a      'diagramnavn og værdier som streng
End Sub
Avatar billede bak Forsker
30. november 2005 - 19:33 #2
Husk at sætte reference til din addin
Avatar billede compilos Nybegynder
30. november 2005 - 19:58 #3
ææh - takker igen! :-)

smid et svar

/Compilos
Avatar billede bak Forsker
30. november 2005 - 20:12 #4
ok :-)
Avatar billede bak Forsker
30. november 2005 - 20:17 #5
bemærk lige at a ikke behøver være en streng, men også kan være et variantarray

a=array(1,2,2,12,2,1.1)
Avatar billede compilos Nybegynder
01. december 2005 - 13:19 #6
Hej - du får point! men kan sgu aligevel ikke få det til at virke!

Jeg har denne makro
    Workbooks(1).Sheets(1).ChartObjects("Chart 116").Activate
    Workbooks(1).ActiveChart.PlotArea.Select
    Workbooks(1).ActiveChart.ChartArea.Select
    Workbooks(1).Sheets(1).Shapes("Chart 116").IncrementLeft 2.25
    Workbooks(1).Sheets(1).Shapes("Chart 116").IncrementTop -39.75
    Workbooks(1).ActiveChart.SeriesCollection(1).Values = "={262,252,22,12,2,1.1}"
    Workbooks(1).ActiveChart.PlotArea.Select

Hvis jeg kopier koden ind i min addin - kører den fint koden igennem. - men den ændre ikke min kurve med :
    Workbooks(1).ActiveChart.SeriesCollection(1).Values = "={262,252,22,12,2,1.1}"


Kan du dreje den!
Avatar billede bak Forsker
01. december 2005 - 17:55 #7
Er du sikker på at du har en graf, der hedder "Chart 116" og at den ligger i workbooks(1).

Hvorfor vil gerne lave en addin, når du alligevel peger på et specifikt ark og graf ?

Du er velkommen til at sende mig dine filer, så skal jeg se hvad jeg kan gøre.
tommybak snabela gmail.com
Avatar billede compilos Nybegynder
01. december 2005 - 21:23 #8
Hej bak!

Jeg kan desværre ikke sende det jeg roder med, - da der er over Terminal Service!

- Jeg er f..... up! og forvirret!

Har du et eksempel på et excel ark - hvor du kalder en funktion i arket der skifter kurvedataerne! - Det ville være KANON!

isåfald -> carsten.rasmussen@adr.dk

/Compilos
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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