Seite 1 von 1

Tabellen automatisch umbenennen

Verfasst: Fr, 29.12.2006 18:41
von degru59
Ist es möglich das unten aufgeführte Excel-Makro auch in Calc zu benutzen. Ich bekomme immer eine Fehlermeldung:
Basic-Laufzeitfehler Sub-oder Function-Prozedur nicht definiert
Worksheets(i) .Name = x ist grau hinterlegt (markiert)

Sub Datum()
Dim x As Date
Dim i
x = InputBox("Bitte Anfangsdatum eingeben:", "Namensgebung")
For i = 1 To 32
Worksheets(i).Name = x
x = x + 1
Next i
End Sub

Wer kann mir helfen ich möchte mit dem Makro erreichen das ein Arbeitsblatt mit 31 Tabellen mit dem Datum z.B. 01.01.2007 bis 31.01.2007 automatisch ausgefüllt wird. In Excel funktioniert es.

MfG Detlef

Verfasst: Fr, 29.12.2006 20:39
von Frank Lauer
Hallo,

leider lässt OOo keinen Punkt im Tabellennamen zu. Außerdem ist OOo etwas strikter beim zuweisen von Variablentypen, so dass du dich auch um das Umwandeln der Variablen ineinander kümmern musst. Versuch mal den folgenden Code:

Code: Alles auswählen

Sub Main
	Dim iZaehler as integer
	Dim oDatum as Date 
	Dim sDatum as String
	sDatum = InputBox("Bitte Startdatum eingeben!","Tabellenumbenennung")
	If IsDate(sDatum) Then
		oDatum = CDate(sDatum)
	Else
		Exit Sub
	Endif 
	For iZaehler = 0 to 30
	  sDatum=cstr(Day(oDatum))+" "+cStr(Month(oDatum))+" "+cStr(Year(oDatum))
      ThisComponent.Sheets(iZaehler).Name=sDatum
      oDatum = oDatum+1
    Next iZaehler
End Sub
Dazu müssen min 31 Tabellen in der Mappe vorhanden sein und die Tabellen dürfen noch keinen Namen aus dem Datumbereich haben.

Verfasst: Sa, 30.12.2006 16:40
von degru59
Danke für die schnelle Hilfe hat geklappt.

MfG Detlef