Strona 1 z 1

[SOLVED] Ukrywanie wielu wierszy zdeklarowanych "na sztywno"

: pn wrz 30, 2013 8:17 pm
autor: deimos
INWOKACJA: Witajcie, czas przemówić, albo może zaśpiewam: Panie Janie, Panie Janie_J rano wstań, pomoż z belstarem
takiemu nieudacznikowi co makra napisac nie potrafi ;)

FABUŁA: W Calcu zachodzi nieraz potrzeba stworzyc i odwoływać się do pomocniczych kolum czy wierszy.
Kiedy przychodzi do drukowania nie chcemy ich jednak widziec. Kiedy są dwie, czy trzy można ukryć je prawoklikiem,
kiedy jednak robi się ich 30 ponad przydało by się makro

I tutaj zaczyna się moja historia.
Stwórzmy dla potomnych miejsce gdzie znajdą MAKRO UKRYWAJĄCE ZADEKLAROWANE WIERSZE(lub kolumny), konkretne
które ''na sztywno" zadeklaruje użyszkodnik.

w internecie znalazłem taki kawałek kodu (mozliwe ukrywanie i wierszy i kolumn):

Kod: Zaznacz cały

REM  *****  BASIC  *****

Sub Ukryj
   ' Create a new spreadsheet document.
   oDoc=ThisComponent
   ' Get a sheet from the document.
'   oSheet = oDoc.getSheets().getByIndex( 0 )
   oSheet = oDoc.getSheets().getByName( "BZ" )
   
   ' Get the collection of columns.
'   oColumns = oSheet.getColumns()
   ' Get a specific column.
'   oColumn = oColumns.getByName( "C" )
   ' Hide the column.
'   oColumn.IsVisible = False
   
   ' Get the  collection of rows.
   oRows = oSheet.getRows()
   ' Get a specific row.
   oRow = oRows.getByIndex("jak_to_zaadresowac") 
   ' Hide the row.
   oRow.IsVisible = False
End Sub 
Makro działa, jednak jedynie tylko do pierwszego wiersza, pozostałe jak na złość ukryć się nie chcą.
Wasze wprawne oczy pewnie juz widzą błąd w programowaniu, więc proszę - uświadomcie mnie.

PS. chciałbym aby ukryały się wiersze począwszy od 7,9,11,13..i tak co drugi do
65wiersza.

PPS.
Panowie, gdyby to Was nie przeciążyło, da się dopisać coś zeby za drugim kliknięciem guzika, do ktorego przypisze makro owe - wiersze się pojawiały? :)

DZIĘKUJĘ ZA POMOC!!

Re: <macro>ukrywanie wielu wierszy zdeklarowanych "na sztywn

: pn wrz 30, 2013 8:47 pm
autor: belstar
może tak

Kod: Zaznacz cały

 For i = 7 To 65 step 2
       ' Get a specific row.
       	oRow = oRows.getByIndex(i)
       ' Hide the row.
       	oRow.IsVisible = False
Next i

Re: <macro>ukrywanie wielu wierszy zdeklarowanych "na sztywn

: pn wrz 30, 2013 9:32 pm
autor: deimos
Za Twoją radą stworzyłem coś takiego:

Kod: Zaznacz cały

REM  *****  BASIC  *****
Sub Ukryj
   ' Create a new spreadsheet document.
   oDoc=ThisComponent
   ' Get a sheet from the document.
'   oSheet = oDoc.getSheets().getByIndex( 0 )
   oSheet = oDoc.getSheets().getByName( "BZ" )
   
For i = 8 To 66 step 2
       ' Get a specific row.
          oRow = oRows.getByIndex(i)
       ' Hide the row.
          oRow.IsVisible = False
Next i
End Sub 
Ale sie sypie na linijce "oRow = oRows.getByIndex(i)"
Dostanę wskazówkę co spaprałem? <:

Re: <macro>ukrywanie wielu wierszy zdeklarowanych "na sztywn

: pn wrz 30, 2013 9:43 pm
autor: belstar
deimos pisze:Ale sie sypie na linijce "oRow = oRows.getByIndex(i)"
Bo musi, brak linijki:

Kod: Zaznacz cały

oRows = oSheet.getRows()
deimos pisze:Panowie, gdyby to Was nie przeciążyło, da się dopisać coś zeby za drugim kliknięciem guzika, do ktorego przypisze makro owe - wiersze się pojawiały
Załącznik

Re: <macro>ukrywanie wielu wierszy zdeklarowanych "na sztywn

: pn wrz 30, 2013 9:53 pm
autor: deimos
sa-sa-sa, oj to już będzie działać (o:
Dzięki Belstar!
Łiiii-ha!