MAKRO Zeilen aus- / einblenden

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

Benutzeravatar
jaMar
**
Beiträge: 31
Registriert: Mo, 14.04.2008 15:56
Wohnort: Berlin

MAKRO Zeilen aus- / einblenden

Beitrag von jaMar »

Hallo mal wieder an alle!

Ich bin auf der Suche nach einem geeigneten Makro, das mir Zeilen aus- bzw. einblendet.
Habe auch schon folgendes in Benutzung:

Code: Alles auswählen

Sub ZeilenEin_Ausblenden

vorgabe = 0

max_zeile = 1378
For x = 0 to max_zeile
   If ThisComponent.Sheets.GetByName("TOUREN").getCellByPosition(vorgabe, x).String = "" Then
      If ThisComponent.Sheets.GetByName("TOUREN").Rows(x).isVisible = False Then
            ThisComponent.Sheets.GetByName("TOUREN").Rows(x).isVisible = True
         Else
            ThisComponent.Sheets.GetByName("TOUREN").Rows(x).isVisible = False
      End if
   End if
Next x

End Sub
Das heißt, alle Zeilen, die in der Spalte A eine "1" haben, bleiben eingeblendet, alle leeren werden ausgeblendet.

Nun mein eigentliches Problem:
Sind erst einmal alle - sagen wir mal - "1-er Zeilen" eingeblendet und die anderen verschwunden, kann das Makro als nächsten Schritt nur wieder ALLE EINBLENDEN. Ich möchte nun aber, dass in Spalte A "1" und "" ständig wechseln, und parallel dazu entsprechend ein- und ausgeblendet wird.
Klingt kompliziert.... Ich möchte einfach nur den Schritt weglassen, in dem alle Zeilen wieder eingeblendet werden.

Hat das jemand verstanden...?! Wenn ja, dann macht mich doch bitte auf den Fehler im Makro aufmerksam - im Schreiben von Makros bin ich nicht sehr gut... :(

Dank schonmal.

Ich hänge mal eine Test-Datei mit an, dann wird mein Problem vielleicht etwas deutlicher. :?
Dateianhänge
TEST_Makro_ausblenden.ods
(11.86 KiB) 42-mal heruntergeladen
+ + + + + + + + + + + + + + + + + + + + + + +
Eine Idee zu klauen, ist eine Kunst für sich. =)
Eddy
********
Beiträge: 2781
Registriert: So, 02.10.2005 10:14

Re: MAKRO Zeilen aus- / einblenden

Beitrag von Eddy »

Hallo jaMar,

Frage doch bitte im Basic und Java - Unterforum nach. Da wird Sie eher geholfen.

Mit anhanglosen Grüßen

Eddy
keksi1970
*****
Beiträge: 464
Registriert: So, 27.01.2008 11:47
Wohnort: DU

Re: MAKRO Zeilen aus- / einblenden

Beitrag von keksi1970 »

hi, nicht elegant, aber so sollte es gehen

Code: Alles auswählen

Sub ZeilenEin_Ausblenden

vorgabe = 0

max_zeile = 30
For x = 0 to max_zeile
	If ThisComponent.Sheets(0).getCellByPosition(vorgabe, x).String = "" Then
		If ThisComponent.Sheets(0).Rows(x).isVisible = False Then
			ThisComponent.Sheets(0).Rows(x).isVisible = True
		Else
			ThisComponent.Sheets(0).Rows(x).isVisible = False
		End if
	Elseif ThisComponent.Sheets(0).getCellByPosition(vorgabe, x).String = "1" Then
		If ThisComponent.Sheets(0).Rows(x).isVisible = False Then
			ThisComponent.Sheets(0).Rows(x).isVisible = True
		Else
			ThisComponent.Sheets(0).Rows(x).isVisible = False
		End if
	End if
Next x

End Sub
lg

Andreas
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: MAKRO Zeilen aus- / einblenden

Beitrag von Karolus »

Hallo
@Andreas
Dein Code blendet alle Zeilen ein oder aus***, das lässt sich mit drei Zeilen realisieren:

Code: Alles auswählen

sub flip_flop_einfach
for x = 0 to 30
ThisComponent.Sheets(0).Rows(x).isVisible = not ThisComponent.Sheets(0).Rows(x).isVisible
next
end sub
aber ich weiss nicht ob das die Zielvorstellung von jarmar ist ?

***genauer formuliert: alle ausgeblendeten Zeilen werden eingeblendet und umgekehrt.

Gruß Karo
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
keksi1970
*****
Beiträge: 464
Registriert: So, 27.01.2008 11:47
Wohnort: DU

Re: MAKRO Zeilen aus- / einblenden

Beitrag von keksi1970 »

funktioniert ab dem 2. Aufruf, vorher muss man ja festlegen, welche Zeilen ein-/ausgeblendet sein sollen

lässt sich aber bestimmt auch in nem 3-Zeiler lösen ;)

lg Andreas

btw : mein Vorschlag sollte nicht die Optimale Lösung sein, ebensowenig elegant :D , nur funktionieren sollte es

Würdest du mir dein Beispiel wenigstens erklären ?
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: MAKRO Zeilen aus- / einblenden

Beitrag von Karolus »

Hallo
keksi1970 hat geschrieben:funktioniert ab dem 2. Aufruf, vorher muss man ja festlegen, welche Zeilen ein-/ausgeblendet sein sollen

lässt sich aber bestimmt auch in nem 3-Zeiler lösen ;)
dazu müsste man wissen nach welchen Regeln bzw. Muster der Anfangszustand hergestellt werden soll ?
keksi1970 hat geschrieben: Würdest du mir dein Beispiel wenigstens erklären ?
Ist eigentlich selbsterklärend:
ThisComponent.Sheets(0).Rows(x).isVisible
hat den Wahrheitswert 'true' oder 'false'
Mit der BasicFunction 'Not' wird 'true' zu 'false' und 'false' 'true'
Mit der ganzen Code-Zeile wird dann die .isVisible -Eigenschaft jeder Tabellenzeile gewechselt.

Gruß Karo
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Benutzeravatar
jaMar
**
Beiträge: 31
Registriert: Mo, 14.04.2008 15:56
Wohnort: Berlin

Re: MAKRO Zeilen aus- / einblenden

Beitrag von jaMar »

also, danke euch beiden für die vorschläge.

AAAAABER: es funktioniert wirklich nicht. :(
ALLE zeilen werden im wechsel ein- bzw. ausgeblendet.
und das wollte ich nicht. (und das mit dem "ab dem 2. aufruf" hab ich nicht ganz kapiert... wie soll man das realisieren...?!

es geht um etliche von mir erstellte tabellen, die fast die gesamte seite ausfüllen. damit man nicht immer kilometerweit hoch- oder runter scrollen muss, soll immer nur die "gebrauchte" tabelle angezeigt werden - mittels "knopfdruck" (auswahl-liste).
aber nun werden entweder alle ein- oder eben ausgeblendet.


:(
+ + + + + + + + + + + + + + + + + + + + + + +
Eine Idee zu klauen, ist eine Kunst für sich. =)
Benutzeravatar
jaMar
**
Beiträge: 31
Registriert: Mo, 14.04.2008 15:56
Wohnort: Berlin

Re: MAKRO Zeilen aus- / einblenden

Beitrag von jaMar »

Eddy hat geschrieben:....

Frage doch bitte im Basic und Java - Unterforum nach. Da wird Sie eher geholfen.

.....

danke für den hinweis - das werde ich gleich mal tun.
8)

Jana
+ + + + + + + + + + + + + + + + + + + + + + +
Eine Idee zu klauen, ist eine Kunst für sich. =)
Antworten