Seite 1 von 1

Diagramme ausblenden

Verfasst: Mi, 19.12.2012 13:02
von zero82
Hallo liebes Forum,

ich möchte gerne per Listenfeld zwei Kategorien einbauen, mit der ich zwei Diagramme aus- bzw. einblenden möchte.

Kategorie A zeigt Diagramm A und Kategorie B zeigt Diagramm B an.

Ich habe folgendes ausprobiert aber er zeigt mir immer einen Fehler an. Woran kann das liegen?

Code: Alles auswählen

Private Sub Diagramm()
If CheckBox1.Value = True Then
    ActiveSheet.ChartObjects("Diagramm1").Visible = True
    ActiveSheet.ChartObjects("Diagramm2").Visible = False
  Else
    ActiveSheet.ChartObjects("Diagramm1").Visible = False
    ActiveSheet.ChartObjects("Diagramm2").Visible = True
End If
End Sub
Danke schonmal
zero82

Re: Diagramme ausblenden

Verfasst: Do, 20.12.2012 22:26
von F3K Total
Hi,
der Code kommt woher? Excel? Geht in Starbasic so nicht.
Habe länger geforscht, dieser Code funktioniert, wenn Du deine Diagramme richtig benamst. (rechte Maustaste auf das Diagramm->Name... -> Diagramm1 und Diagramm2 eintragen):

Code: Alles auswählen

Private Sub Diagramm()
    oSheet = Thiscomponent.currentcontroller.activeSheet
    opage = oSheet.drawpage
    oform = opage.forms.Formular
    for i = 0 to opage.count - 1
        oshape = opage(i)
        if oshape.LinkDisplayName = "Diagramm1" then sPersistName1 = oshape.PersistName
        if oshape.LinkDisplayName = "Diagramm2" then sPersistName2 = oshape.PersistName
    next i
    ocharts = oSheet.charts
    for i = 0 to ocharts.count -1
        oChart = ocharts(i)
        if ochart.Name = sPersistName1 then odia1 = ochart.EmbeddedObject.drawpage(0)
        if ochart.Name = sPersistName2 then odia2 = ochart.EmbeddedObject.drawpage(0)
    next i
    CheckBox1 = oForm.CheckBox1
    If CheckBox1.state = 1 Then
        odia1.Visible = True
        odia2.Visible = False
      Else
        odia1.Visible = False
        odia2.Visible = True
    End If
End Sub
Anbei ein Beispiel.
Gruß R

Re: Diagramme ausblenden

Verfasst: Fr, 21.12.2012 08:26
von zero82
Hallo,

wenn ich dieses Skript ausführe taucht bei mir folgender Fehler auf:
Fehler.jpg
Fehler.jpg (135.14 KiB) 2692 mal betrachtet

Re: Diagramme ausblenden

Verfasst: Fr, 21.12.2012 14:18
von F3K Total
Hi,
wenn es sich um meine Datei handelt, die läuft bei mir, liegt es vielleicht an deiner OpenOffice Version (3.2).
Aktuell ist 3.4.1

Gruß R

Re: Diagramme ausblenden

Verfasst: Fr, 21.12.2012 15:22
von zero82
Hallo F3K,

ja daran könnte das liegen. Ich probiere es mal später an meinem Laptop. Da habe ich die neuere Version drauf und berichte ob es funktioniert hat. Ich frage mich aber, wie das sein kann. Normalerweise müssten beide OOo Versionen kompatibel sein, oder habe ich einen Denkfehler.

Bis denne...

Re: Diagramme ausblenden

Verfasst: Fr, 21.12.2012 15:40
von F3K Total
Hi,
da scheint sich was getan zu haben.
Unter 3.3 läuft und funktioniert das Makro, unter 3.4.1 läuft es ohne Fehlermeldung, das Diagramm wird aber nicht ausgeblendet. Komisch.
Ich forsche mal in Version 3.4.1 weiter.

So, schon fertig: Unter 3.4.1 läuft dieses:

Code: Alles auswählen

Private Sub Diagramm()

    oSheet = Thiscomponent.currentcontroller.activeSheet
    opage = oSheet.drawpage
    oform = opage.forms.Formular
    for i = 0 to opage.count - 1
        oshape = opage(i)
        if oshape.Name = "Diagramm1" then  odia1 = oshape
        if oshape.Name = "Diagramm2" then  odia2 = oshape
    next i
    CheckBox1 = oForm.CheckBox1
    If CheckBox1.state = 1 Then
        odia1.Visible = True
        odia2.Visible = False
      Else
        odia1.Visible = False
        odia2.Visible = True
    End If
End Sub
Gruß R

Edit: Unter LO 3.5 und LO 3.6 läuft wiederum nur die erste Version.

Re: Diagramme ausblenden

Verfasst: Fr, 21.12.2012 15:58
von zero82
Hi,

ich habe die alte Version unter LO 3.6 ausprobiert funktioniert tadellos. Nur in OOo kommt die Fehlermeldung. Wie gesagt, ich probiere es mal unter Oo 3.4 aus und berichte. Mal sehen woran das liegt.

Re: Diagramme ausblenden

Verfasst: Fr, 21.12.2012 21:40
von zero82
hi,

ja es ist genau so wie du sagtest. Bei oOo funktioniert das Makro ohne Fehlermeldung aber das Diagramm wird nicht aus- bzw. eingeblendet. Mhhh...

Re: Diagramme ausblenden

Verfasst: Fr, 21.12.2012 21:56
von F3K Total
Na, für OOo 3.4.1 habe ich doch den zweiten Code gepostet.
Gruß R