Hier erstmal der Code :
Code: Alles auswählen
REM ***** BASIC *****
REM Sichtkanten Makro
Option Explicit
Sub Sichtkanten(oEvent)
dim oAuslesen, oDocument, oSheet(5) as Object
dim oDraw(5), oForm(5), oControler as Object
dim oCheckBox as Object
dim iSicht, Z, I as Integer
dim oCBLib, oLib, oRan, sTesT as String
oAuslesen = oEvent.Source.Model.Name
oDocument = StarDesktop.CurrentComponent
oSheet(0) = oDocument.Sheets.GetByName("Plattenerfassung")
oSheet(1) = oDocument.Sheets.GetByName("Granit Modul")
oSheet(2) = oDocument.Sheets.GetByName("Durabo Modul")
oSheet(3) = oDocument.Sheets.GetByName("GlassStone Modul")
oSheet(4) = oDocument.Sheets.GetByName("HILFSTABELLE2")
oSheet(5) = oDocument.Sheets.GetByName("Bestellformular")
oDraw(0) = oSheet(0).DrawPage
oDraw(5) = oSheet(5).DrawPage
oForm(0) = oDraw(0).Forms.GetByIndex(0)
oForm(5) = oDraw(5).Forms.GetByIndex(0)
oControler = oDocument.GetCurrentController
Select Case Val(Right(oForm(0).getByName(oAuslesen).Name,1))
Case 1 : Z = 11 : oRan = "$B$2" : oLib = "$F$2"
Case 2 : Z = 12 : oRan = "$H$2" : oLib = "$L$2"
Case 3 : Z = 13 : oRan = "$B$7" : oLib = "$F$7"
Case 4 : Z = 14 : oRan = "$H$7" : oLib = "$L$7"
Case 5 : Z = 22 : oRan = "$B$13" : oLib = "$F$13"
End Select
sTest = "Check Box " & Z
oCheckBox = oControler.GetControl(oForm(5).GetByName(sTest))
iSicht = Val(oSheet(4).GetCellRangeByName(oRan).String)
oCBLib = oSheet(4).GetCellRangeByName(oLib).String
If iSicht > 1 Then
If not(oSheet(1).GetRows().GetByIndex(Z).isVisible) Then
For I = 1 To 3
oSheet(I).GetRows().GetByIndex(Z).isVisible = True
Next I
oCheckBox.State = 0
End If
Else
If oSheet(1).GetRows().GetByIndex(Z).isVisible Then
For I = 1 To 3
oSheet(I).GetRows().GetByIndex(Z).isVisible = False
Next I
oCheckBox.State = 1
End If
End If
End Sub
BASIC-Laufzeitfehler.
Es ist eine Exception aufgetreten
Type : com.sun.star.container.NoSuchElementException
Message : .
In folgender Zeile :
Code: Alles auswählen
oCheckBox = oControler.GetControl(oForm(5).GetByName(sTest))
Nun hier will ich schlussendlich wenn ich diese Fehlermeldung überwinden kann...
die CheckBox Sichtbar/Unsichtbar machen
den Text der CheckBox ändern und
die CheckBox Checken/Unchecken
*****
Nebenbei werden auch Zeilen in 3 anderen Blättern Versteckt/resp. angezeigt dies funktionniert tadellos und wurde auch gestestet bevor ich die CheckBox eingebaut habe.

Ps Datei im Anhang
