Seite 1 von 1
[Gelöst] Abfrage ob Tabellenblatt vorhanden
Verfasst: Di, 08.09.2015 16:20
von Becki_Beck
Hallo!
Ich versuche eine Abfrage zu erstellen ob das angegebene Tabellenblatt vorhanden ist.
Ich habe eine Liste mit Namen und jeder Name hat ein eigenes Tabellenblatt. Mein Makro ruft Informationen aus diesem Tabellenblatt ab. Wenn nun in der Liste ein Name steht, es aber zu diesem kein Tabellenblatt gibt, soll eine msgbox kommen die darauf hinweist.
z.B.:
Code: Alles auswählen
If oDok.Sheets().getbyName("B3")=False then
msgbox ("Keine Tabelle für den Namen"&oDok.Sheet().getcellrangebyname("B3").string"vorhanden.")
Hoffe es kann mir jemand Helfen den Code richtig zu biegen.
lg Julian
Re: Abfrage ob Tabellenblatt vorhanden
Verfasst: Di, 08.09.2015 17:05
von Stephan
z.B.:
Code: Alles auswählen
Sub Main
oDok = ThisComponent
If Not oDok.Sheets().HasByName(oDok.Sheets(0).getCellRangebyName("B3").String) then
msgbox "Keine Tabelle für den Namen " & oDok.Sheets(0).getcellrangebyname("B3").string & " vorhanden."
Else
msgbox "Tabelle für den Namen " & oDok.Sheets(0).getcellrangebyname("B3").string & " vorhanden."
End If
End Sub
Gruß
Stephan
Re: Abfrage ob Tabellenblatt vorhanden
Verfasst: Mi, 09.09.2015 10:00
von Becki_Beck
Hallo Stephan!
Danke für deine Antwort

Habe deinen Code mit meinen Variablen versehen und bekomme aber immer den Fehler:
"BASIC-Laufzeitfehler.
Es ist eine Ausnahme aufgetreten
Type: com.sun.star.uno.RuntimeException
Message: ."
Hast du vl ne Idee woran das liegen könnte?
Code: Alles auswählen
Sub
oDok = ThisComponent
Auswertung=oDok.getSheets().getbyname("Auswertung")
for i=5 to 55
FilterKriterium=Auswertung.getcellbyposition(1,i)
If Not oDok.Sheets().HasByName(Auswertung.getCellRangebyName(FilterKriterium.string).string) then
msgbox "Keine Tabelle für den Namen " & Auswertung.getcellrangebyname(FilterKriterium.string).string & " vorhanden."
Else
end if
next i
End Sub
[Gelöst] Re: Abfrage ob Tabellenblatt vorhanden
Verfasst: Mi, 09.09.2015 10:08
von Becki_Beck
Ok habe den Fehler schon gefunden!
Habe bisschen was durcheinander gebracht
Code: Alles auswählen
Sub
oDok = ThisComponent
Auswertung=oDok.getSheets().getbyname("Auswertung")
for i=5 to 55
FilterKriterium=Auswertung.getcellbyposition(1,i)
If Not oDok.Sheets().HasByName(FilterKriterium.string) then
msgbox "Keine Tabelle für den Namen " & FilterKriterium.string & " vorhanden."
Else
end if
next i
End Sub