[GELÖST]einzelne Zellen durch Makro leeren

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

AlinaGeier
**
Beiträge: 21
Registriert: Mo, 01.02.2021 14:10

[GELÖST]einzelne Zellen durch Makro leeren

Beitrag von AlinaGeier »

Hallo,
ich würde gerne eine Schaltfläche erstellen, die bei betätigen den Inhalt 6 bestimmter Zellen löscht.
Ich habe bereits die Schaltfläche, jetzt brauche ich noch ein Makro, das ich dann noch auf die genauen Zellen anpassen kann. Gibt es dafür bereits ein vorgefertigtes Makro? Oder wie kann ich selbst ein Makro aufbauen?

Außerdem habe ich noch eine andere Frage. Ist es in Calc möglich, zwei Schaltflächen miteinander zu verknüpfen? Ich habe eine Schaltfläche, die bei Betätigen +1 zu einer bestimmten Zelle addiert und möchte nun, dass ich nur auf eine Schaltfläche drücken muss, damit dieser +1 Befehl ausgeführt wird und gleichzeitig die 6 bestimmten Zellen geleert werden. Kann man auf einer Schaltfläche beide Makros ausführen oder kann man zwei Schaltflächen auf einer dritten verknüpfen?

Vielen Dank schonmal,
Alina
Zuletzt geändert von AlinaGeier am Fr, 12.02.2021 08:29, insgesamt 1-mal geändert.
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: einzelne Zellen durch Makro leeren

Beitrag von Stephan »

z.B.:

Code: Alles auswählen

Sub Main
	tcs = ThisComponent.Sheets.getByName("Tabelle1")
	zellnamen = Array("A1","B2","B3","A4","A5","B6")
	For i = 0 To Ubound(zellnamen())
		'siehe: 
		'http://www.openoffice.org/api/docs/common/ref/com/sun/star/sheet/XSheetOperation.html#clearContents
		'http://www.openoffice.org/api/docs/common/ref/com/sun/star/sheet/CellFlags.html
		tcs.getCellrangeByName(zellnamen(i)).clearContents(23) 'Value, DateTime, String, Formula
	Next i
	tcs.getCellrangeByName("C1").Value = tcs.getCellrangeByName("C1").Value + 1
End Sub

Gruß
Stephan
Dateianhänge
Beispiel.ods
(9.85 KiB) 105-mal heruntergeladen
AlinaGeier
**
Beiträge: 21
Registriert: Mo, 01.02.2021 14:10

Re: einzelne Zellen durch Makro leeren

Beitrag von AlinaGeier »

Vielen Dank für eine mal wieder schnelle und super Antwort:)
Antworten