Toon posts:

[VB] Grafiek veranderen van plaats

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hey,

vraagje: hoe kan ik 'random gecreeërde' grafieken veranderen van plaats?
Eerste gedacht was via
'ActiveSheet.Shapes("Grafiek 62").IncrementLeft -95.25'
Maar hievoor staat de naam 'Grafiek 62' er in...

Als ik deze code implementeer in visual basic en ik maak terug een grafiek aan via de macro, geeft deze een foutmelding want ondertussen is het Grafiek 63 geworden...

Iemand een oplossing om tóch te kunnen verplaatsen, ongeacht de naam van de grafiek?

Thx in advance

  • Gulf_5
  • Registratie: Maart 2004
  • Laatst online: 20-10-2024

Gulf_5

Lucht-v/w-aardig

In je macro waarin je de grafiek maakt kun je aangeven hoe de grafiek moet heten, zorg er voor dat deze een vaste naam krijgt.

Als je een heleboel grafieken moet genereren is t een iets ander verhaal:
dan moet je een vaste naam bedenken en dan in je macro zeggen "naam" & i waarbij i bij iedere nieuwe grafiek met +1 toeneemt.

In het volgende deel van de macro, waarmee je hem verplaatst verwijs je op dezelfde wijze naar de grafiek, dus met de vaste naam, of met een "naam" & i functie.

Ik zal het straks effe uitproberen, heb er nu geen tijd voor. Laat maar weten of je er op deze manier al beter uitkomt...

en welkom op GoT, zie dat je hier al 2 dagen rondspookt :D ik raad je wel aan om aan te geven wat je zelf al gegoogled en gesearched hebt, of je al F1 hebt geramd in VB en dat soort zaken. Ik heb er niet zo'n problemen mee als je zo flat out je vraag stelt, als ik je dan kan helpen doe ik dat, maar het is wel de bedoeling dat je topicstart voldoet aan de regels van het forum, anders kan je mot krijgen met de Modjes... 8) En dat zal je niet willen denk ik O-)
Succes verder met je grafieken !

[ Voor 34% gewijzigd door Gulf_5 op 16-12-2005 09:52 . Reden: btje helpen enzo O-) ]

iets met foto's...


  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 23:54
Je kan ook via je chartobjects werken. Dan kan je selecteren aan de hand van meer voor de hand liggende eigenschappen dan de naam van een grafiek.
Visual Basic:
1
2
3
4
5
6
7
8
Sub verplaats()
Dim grafiek As Object
For Each grafiek In ActiveSheet.ChartObjects
    If grafiek.Chart.ChartTitle.Characters.Text = "test" Then
        grafiek.ShapeRange.IncrementLeft -95.25
    End If
Next grafiek
End Sub

Hierbij wordt dus een grafiek met de titel (niet naam) test verschoven.

Verwijderd

Topicstarter
Thx a lot!