Seite 1 von 1

Makro - Tabellenblätter

Verfasst: Fr, 30.07.2004 16:54
von mike6
Hallo,

mein Makro soll nacheinander die Tabellenblätter
aufrufen und alle Tabellenblätter auf Zelle "E17" stellen.
Da sich die Namen und die Anzahl der Tabellenblätter aber immer
ändern, suche ich den dazugehörigen Befehl in Basic.

Wenn ich das Makro aufzeichne erscheint immer
Tabellenblatt1, Tabellenblatt 2 ..... .


MfG
mike6

Verfasst: Fr, 30.07.2004 20:53
von Toxitom
Hey Mike6,

auch wenn ich deine Frage nicht verstehen (was verstehst du unter ...nacheinander aufrufen und auf E17 stellen?) kannst du die Tabellenblätter auch über ihren Index ansprechen - statt mit dem Namen. Das erte Blatt hat die Nummer (index) Null das zweite 1 und so weiter. Über eine schleife mit Prüfung, ob es das Baltt überhaupt gibt, erreichst du alle.

Den Rest versteh ich nicht.

Gruss
Thomas

Taybellenblätter ansteuern

Verfasst: Sa, 31.07.2004 14:58
von mike6
Hallo,

ich habe 17 Tabellenblätter. Auf all diesen Tabellenblättern
ist in der Zelle E17 eine Eingabe zu tätigen.

Damit ich nicht alle Tabellenblätter nacheinander öffnen
muss und mit der Maus in E 17 klicken muss möchte ich dies
über ein Makro steuern.

Das alles mit dem Makrorecorder aufzuzeichnen ist nicht
die Schwierigkeit, sondern die Ansteuerung der einezelnen
Tabellenblätter, die nicht immer den gleichen Namen haben müssen.

In der Datei xyz heissen Sie Tabelle 1, Tabelle2 ....
In der Datei btz heisen Sie A1, A2 ....


MfG
mike6

Verfasst: So, 01.08.2004 10:58
von Stephan
Ein solches Makro erledigt das:

Code: Alles auswählen

Sub eintragen
myDoc = stardesktop.currentcomponent
'einzutragender Wert
eingabe = 123
Anzahl = myDoc.Sheets.count
'in allen Blättern eintragen
For i=0 to Anzahl-1
	blatt = myDoc.Sheets(i)
	'in Zelle E17 eintragen
	zelle = blatt.getCellByPosition(4,16)
	zelle.Value = 123
Next i
end sub

Gruß
Stephan

Danke

Verfasst: So, 01.08.2004 17:38
von mike6
Hallo,

vielen Dank für die schnelle Antwort.

Mfg
mike6