Rivien piilotus

Anonyymi

Onko excelissä mahdollista piilottaa ruutunäkymässä tietty määrä perättäisiä rivejä siten että näkyisi vain ensimmäinen (otsikko )rivi?
Sitten olisi mahdollista tarvittaessa avata/sulkea ryhmän kaikki rivit "klikkaamalla", niin ettei hankalaa rivien "valintamaalausta" tarvitsisi enää tässä tehdä.

13

930

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      On, piilottaa vaan valitsemansa rivit. "Klikkailuun" pitää tehdä makro.

      Ensimmäisen rivin saat lukittua suoraan.

      • Anonyymi

        Ei tuossa oikein makrotkaan toimi, kun käytössä ryhmiin lisätään rivejä jatkuvasti. Piilotettavan rivimäärän pitäisi päivittyä makroon automaattisesti.


      • Anonyymi kirjoitti:

        Ei tuossa oikein makrotkaan toimi, kun käytössä ryhmiin lisätään rivejä jatkuvasti. Piilotettavan rivimäärän pitäisi päivittyä makroon automaattisesti.

        höpö höpö...
        katso koodini, ja siinä voit lisätä ja poistella soluja alueelta ja toimii ;-)
        Keep EXCEling
        @Kunde


      • Anonyymi
        kunde kirjoitti:

        höpö höpö...
        katso koodini, ja siinä voit lisätä ja poistella soluja alueelta ja toimii ;-)
        Keep EXCEling
        @Kunde

        En saanut koodia toimimaan, ei tapahdu klikkaamalla mitään.
        Koodin kopion tavalliseen moduliin, muuta en tehnyt.
        Alue näyttää olevan nimellään toimiva. Joku tässä on vielä huomaamatta...


      • Anonyymi kirjoitti:

        En saanut koodia toimimaan, ei tapahdu klikkaamalla mitään.
        Koodin kopion tavalliseen moduliin, muuta en tehnyt.
        Alue näyttää olevan nimellään toimiva. Joku tässä on vielä huomaamatta...

        "Allaoleva koodi ko. moduuliin..."
        eli koodi pitää olla ko taulukon moduulissa eikä tavallisessa moduulissa....


      • Anonyymi
        kunde kirjoitti:

        "Allaoleva koodi ko. moduuliin..."
        eli koodi pitää olla ko taulukon moduulissa eikä tavallisessa moduulissa....

        No nyt löytyi oikea moduli. Näytää koodi toimivan. Thx!
        Kuinka tuota koodia nonistetaan toimimaan muille nimetylle alueelle?
        Pahimmillaan otsikoita ja niiden alueita voi olla useita kymmeniä.
        Oliksiko mahdollista että alueen nimi otettaisiin koodiin siitä otsikkosolusta jota klikataan?


      • Anonyymi kirjoitti:

        No nyt löytyi oikea moduli. Näytää koodi toimivan. Thx!
        Kuinka tuota koodia nonistetaan toimimaan muille nimetylle alueelle?
        Pahimmillaan otsikoita ja niiden alueita voi olla useita kymmeniä.
        Oliksiko mahdollista että alueen nimi otettaisiin koodiin siitä otsikkosolusta jota klikataan?

        Toki sen voi koodata ottamaan nimen siitä solusta, mutta ei mielestäni järkevää(koska tarvitaan sitten lisätä virheen tarkasteluja yms). The Simple the Best!

        Tee kuten neuvoin, eli nimeä alue otsikoineen ja ja käytä ALUEIDEN nimä koodissa. Koodi käyttää alueen nimeä ja sen ensimmäistä solua vasemmasta yläkulmasta.

        Koodissa siis "nimi", "osoite" ja " email" vastaavat määritettyjen aluieden nimiä ja klikkaamalla alueen vasemmanpuoleisinta solua otsikkorivillä esim. koodissa osoite alueen ( Range("osoite").Cells(1)) ) solua, koodi suoritetaan...
        Toki voi sen muuttaa koskemaan alueen koko otsikkoriviäkin.

        ko. tauukon moduuliin...
        Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        If Not Intersect(Target, Range("nimi").Cells(1)) Is Nothing Then
        If Selection.Count = 1 Then
        If Range("nimi").Cells(2, 1).EntireRow.Hidden = True Then
        Range("nimi").Offset(1).Resize(Range("nimi").Rows.Count - 1).EntireRow.Hidden = False
        Else
        Range("nimi").Offset(1).Resize(Range("nimi").Rows.Count - 1).EntireRow.Hidden = True
        End If
        Target.Offset(0, 1).Select
        End If
        End If
        If Not Intersect(Target, Range("osoite").Cells(1)) Is Nothing Then
        If Selection.Count = 1 Then
        If Range("osoite").Cells(2, 1).EntireRow.Hidden = True Then
        Range("osoite").Offset(1).Resize(Range("osoite").Rows.Count - 1).EntireRow.Hidden = False
        Else
        Range("osoite").Offset(1).Resize(Range("osoite").Rows.Count - 1).EntireRow.Hidden = True
        End If
        Target.Offset(0, 1).Select
        End If
        End If
        If Not Intersect(Target, Range("email").Cells(1)) Is Nothing Then
        If Selection.Count = 1 Then
        If Range("email").Cells(2, 1).EntireRow.Hidden = True Then
        Range("email").Offset(1).Resize(Range("email").Rows.Count - 1).EntireRow.Hidden = False
        Else
        Range("email").Offset(1).Resize(Range("email").Rows.Count - 1).EntireRow.Hidden = True
        End If
        Target.Offset(0, 1).Select
        End If
        End If
        'jne
        End Sub

        Keep EXCELing
        @Kunde


      • Anonyymi
        kunde kirjoitti:

        Toki sen voi koodata ottamaan nimen siitä solusta, mutta ei mielestäni järkevää(koska tarvitaan sitten lisätä virheen tarkasteluja yms). The Simple the Best!

        Tee kuten neuvoin, eli nimeä alue otsikoineen ja ja käytä ALUEIDEN nimä koodissa. Koodi käyttää alueen nimeä ja sen ensimmäistä solua vasemmasta yläkulmasta.

        Koodissa siis "nimi", "osoite" ja " email" vastaavat määritettyjen aluieden nimiä ja klikkaamalla alueen vasemmanpuoleisinta solua otsikkorivillä esim. koodissa osoite alueen ( Range("osoite").Cells(1)) ) solua, koodi suoritetaan...
        Toki voi sen muuttaa koskemaan alueen koko otsikkoriviäkin.

        ko. tauukon moduuliin...
        Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        If Not Intersect(Target, Range("nimi").Cells(1)) Is Nothing Then
        If Selection.Count = 1 Then
        If Range("nimi").Cells(2, 1).EntireRow.Hidden = True Then
        Range("nimi").Offset(1).Resize(Range("nimi").Rows.Count - 1).EntireRow.Hidden = False
        Else
        Range("nimi").Offset(1).Resize(Range("nimi").Rows.Count - 1).EntireRow.Hidden = True
        End If
        Target.Offset(0, 1).Select
        End If
        End If
        If Not Intersect(Target, Range("osoite").Cells(1)) Is Nothing Then
        If Selection.Count = 1 Then
        If Range("osoite").Cells(2, 1).EntireRow.Hidden = True Then
        Range("osoite").Offset(1).Resize(Range("osoite").Rows.Count - 1).EntireRow.Hidden = False
        Else
        Range("osoite").Offset(1).Resize(Range("osoite").Rows.Count - 1).EntireRow.Hidden = True
        End If
        Target.Offset(0, 1).Select
        End If
        End If
        If Not Intersect(Target, Range("email").Cells(1)) Is Nothing Then
        If Selection.Count = 1 Then
        If Range("email").Cells(2, 1).EntireRow.Hidden = True Then
        Range("email").Offset(1).Resize(Range("email").Rows.Count - 1).EntireRow.Hidden = False
        Else
        Range("email").Offset(1).Resize(Range("email").Rows.Count - 1).EntireRow.Hidden = True
        End If
        Target.Offset(0, 1).Select
        End If
        End If
        'jne
        End Sub

        Keep EXCELing
        @Kunde

        Okei, tuota koodin 10-rivistä ydinosaa vain kopioidaan tarvittava määrä peräkkäin, ja muokataan niiden nimet kohdilleen.
        Helppo nakki tuottaa muutama sata riviä koodia. 😃


    • Tietenkin...
      maalaa dataa sisältävä alue otsikkorivineen ja nimeä se ( kirjoittamalla valinnan nimi vasemmalla ylhäällä kaavarivillä olevaan nimiruutuun (nimi koodissa) ja ENTER tai menun kautta )

      Allaoleva koodi ko. moduuliin...

      Private Sub Worksheet_SelectionChange(ByVal Target As Range)
      If Not Intersect(Target, Range("nimi").Cells(1)) Is Nothing Then
      If Selection.Count = 1 Then
      If Range("nimi").Cells(2, 1).EntireRow.Hidden = True Then
      Range("nimi").Offset(1).Resize(Range("nimi").Rows.Count - 1).EntireRow.Hidden = False
      Else
      Range("nimi").Offset(1).Resize(Range("nimi").Rows.Count - 1).EntireRow.Hidden = True
      End If
      Target.Offset(0, 1).Select
      End If
      End If
      End Sub

      Keep EXCELing
      @Kunde

      • Unohdin mainita, että näytä/piilotus toimii klikkaamalla alueen vasemmanpuoleista solua alueen otsikkorivillä

        keep EXCELing
        @Kunde


      • Anonyymi

        Onko tarpeen valita alueeseen koko dataa sisältäävää aluetta, eikö riittäisi että maalataan vain ensimmäinen sarake? Koko rivihän kuitenkin aina piilotetaan.


    • Anonyymi

      Eikö tuo tulisi yksinkertaisesti merkkaamalla piilotettavat rivit ryhmäksi (group). Ryhmä kasvaa, kun väliin lisätään rivejä, joten siihen on otettava yksi ylimääräinen rivi, jonka yläpuolelle uusi rivi lisätään.

      • Anonyymi

        Toimii se niinkin että maalataan rivinumerosarakkeesta rivejä, ja annetaan tälle alueelle nimi.
        Ja alueen lopuun on hyvä jättää tyhjä rivi että rivien lisääminen on helpppoa.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Olen tosi outo....

      Päättelen palstajuttujen perusteella mitä mieltä minun kaipauksen kohde minusta on. Joskus kuvittelen tänne selkeitä tap
      Ikävä
      16
      2128
    2. Kotkalainen Demari Riku Pirinen vangittu Saksassa lapsipornosta

      https://www.kymensanomat.fi/paikalliset/8081054 Kotkalainen Demari Riku Pirinen vangittu Saksassa lapsipornon hallussapi
      Kotka
      84
      2068
    3. Oletko sä luovuttanut

      Mun suhteeni
      Ikävä
      101
      1377
    4. Vanhalle ukon rähjälle

      Satutit mua niin paljon kun erottiin. Oletko todella niin itsekäs että kuvittelet että huolisin sut kaiken tapahtuneen
      Ikävä
      10
      1176
    5. Hommaatko kinkkua jouluksi?

      Itse tein pakastimeen n. 3Kg:n murekkeen sienillä ja juustokuorrutuksella. Voihan se olla, että jonkun pienen, valmiin k
      Sinkut
      145
      1170
    6. Maisa on SALAKUVATTU huumepoliisinsa kanssa!

      https://www.seiska.fi/vain-seiskassa/ensimmainen-yhteiskuva-maisa-torpan-ja-poliisikullan-lahiorakkaus-roihuaa/1525663
      Kotimaiset julkkisjuorut
      81
      1143
    7. Aatteleppa ite!

      Jos ei oltaisikaan nyt NATOssa, olisimme puolueettomana sivustakatsojia ja elelisimme tyytyväisenä rauhassa maassamme.
      Maailman menoa
      249
      886
    8. Omalääkäri hallituksen utopia?

      Suurissa kaupungeissa ja etelässä moinen onnistunee. Suuressa osassa Suomea on taas paljon keikkalääkäreitä. Mitenkäs ha
      Maailman menoa
      172
      858
    9. Mitä sanoisit

      Ihastukselle, jos näkisitte?
      Tunteet
      63
      834
    10. Onko se ikä

      Alkanut haitata?
      Ikävä
      59
      811
    Aihe