Noch eine Umwandlungsfrage (Makro Excel->OO)

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Noch eine Umwandlungsfrage (Makro Excel->OO)

von hol.sten » Mi, 21.06.2006 22:08

Lobo-mau hat geschrieben:Gibt es irgendwo ein Glossar, wo man die grundlegenden Sachen mal einsehen kann?
Unter http://documentation.openoffice.org/HOW_TO/ findet man (wenn die Seite Online ist) ein VBA to Star Basic HowTo.

With kind regards
hol.sten

von Lobo-mau » Mi, 21.06.2006 21:30

Stephan hat geschrieben:
Meine erste Idee könnte wie folgt aussehen:


Nur wie kommst Du darauf?

Code: Alles auswählen

Dim Blaetter As String


wofür ist das gut, die Variable Blaetter taucht nirgens auf

Code: Alles auswählen

If ThisComponent.Sheets().Visible = 0 Then


kann nicht gehen, es ist nirgens ein Blatt angesprochen (Wozu überhaupt die Zählschleife, wenn Du i ohnehin nicht nutzt?) und die Visible-Eigenschaft existiert ebenfalls nicht.

Code: Alles auswählen

Sub Versteckte_Blaetter_anzeigen() 
     Dim Blaetter As String 
     For i = 0 To ThisComponent.Sheets().Count-1 
         If ThisComponent.Sheets(i).IsVisible = 0 Then 
             ThisComponent.Sheets(i).IsVisible = 1
         End If 
     Next i 
End Sub

Gruß
Stephan
Das "Dim Blaetter" stammte aus einem vorigen Makro, das war unentdeckt dringeblieben. Habs soeben auch rausgelöscht. Das "i" habe ich einfach vergessen :D

Ansonsten war ich ja gar nichtmal soooo weit davon entfernt. Gibt es irgendwo ein Glossar, wo man die grundlegenden Sachen mal einsehen kann?

von Stephan » Mi, 21.06.2006 21:12

Meine erste Idee könnte wie folgt aussehen:


Nur wie kommst Du darauf?

Code: Alles auswählen

Dim Blaetter As String


wofür ist das gut, die Variable Blaetter taucht nirgens auf

Code: Alles auswählen

If ThisComponent.Sheets().Visible = 0 Then


kann nicht gehen, es ist nirgens ein Blatt angesprochen (Wozu überhaupt die Zählschleife, wenn Du i ohnehin nicht nutzt?) und die Visible-Eigenschaft existiert ebenfalls nicht.

Code: Alles auswählen

Sub Versteckte_Blaetter_anzeigen() 
     Dim Blaetter As String 
     For i = 0 To ThisComponent.Sheets().Count-1 
         If ThisComponent.Sheets(i).IsVisible = 0 Then 
             ThisComponent.Sheets(i).IsVisible = 1
         End If 
     Next i 
End Sub

Gruß
Stephan

Noch eine Umwandlungsfrage (Makro Excel->OO)

von Lobo-mau » Mi, 21.06.2006 20:47

Ich habe folgendes Makro aus Excel, dass ich gerne in die OO-Syntax bringen möchte:

Code: Alles auswählen

Sub Versteckte_Blaetter_anzeigen()
     For i = 1 To Sheets.Count
         Sheets(i).Activate
         If ActiveSheet.Visible = 0 Then
             ActiveSheet.Visible = -1
         End If
     Next i
     Sheets(1).Activate
End Sub
Meine erste Idee könnte wie folgt aussehen:

Code: Alles auswählen

Sub Versteckte_Blaetter_anzeigen()
     For i = 0 To ThisComponent.Sheets().Count-1
         If ThisComponent.Sheets().Visible = 0 Then
             ThisComponent.Sheets.Visible = -1
         End If
     Next i
End Sub
Liege ich damit annähernd richtig? Irgendetwas ist noch nicht ganz richtig.

Achso, noch etwas zum Verständnis:

Ich möchte gerne alle Tabellenblätter, die ausgeblendet sind, wieder einblenden lassen.

Nach oben