"Kelluva rivi"?

kaavoittaja.

Taulukko, jossa on vaikkapa 6 saraketta ja 10 riviä. Alin rivi on kaavarivi jossa lasketaan yläpuolisten solujen summa, keskiarvo, jne. Onko mahdollista tehdä kaavarivistä ikään kuin kelluva eli kun riviin/soluun tulee tietoa niin Excel lisää automaattisesti uuden tyhjän rivin ko. rivin/solun alapuolelle ja kaavarivi "painuu alemmas"?

4

625

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Jos sijoitat summa/koosterivin varsinaisen aineistosi yläpuolelle, niin ko. ongelma häviää "kuin taikaiskusta". Varsinkin, jos huolehdit kaavojen riittävistä aluelaajuuksista alaspäin.

      Jos vältämättä haluat ko. yhteenvetorivin olevan aineiston alapuolella, niin ehkä pääset jonkinlaiseen tulokseen jakamalla taulukon jostain n. rivin 1000 kohdalta. Summarivinä on siis rivi 1001 ja sen yläpuolella oleva taulukon osa rullaa.

      • taulukon moduuliin...

        Private Sub Worksheet_Change(ByVal Target As Range)
        Dim vika As Long
        On Error Resume Next
        Application.EnableEvents = False
        vika = Cells.Find(What:="*", After:=[A1], SearchDirection:=xlPrevious).Row
        Range("A" & vika).EntireRow = ""
        vika = Cells.Find(What:="*", After:=[A1], SearchDirection:=xlPrevious).Row
        Range("A" & vika 2).FormulaR1C1 = "=SUM(R[-21]C:R[-1]C)"
        Range("B" & vika 2).FormulaR1C1 = "=SUM(R[-21]C:R[-1]C)"
        Range("C" & vika 2).FormulaR1C1 = "=SUM(R[-21]C:R[-1]C)"
        'näyttää 5 viimeistä tietoa, muuta lukua
        Application.GoTo Range("A" & vika - 4), True
        Application.EnableEvents = True
        End Sub


      • kunde kirjoitti:

        taulukon moduuliin...

        Private Sub Worksheet_Change(ByVal Target As Range)
        Dim vika As Long
        On Error Resume Next
        Application.EnableEvents = False
        vika = Cells.Find(What:="*", After:=[A1], SearchDirection:=xlPrevious).Row
        Range("A" & vika).EntireRow = ""
        vika = Cells.Find(What:="*", After:=[A1], SearchDirection:=xlPrevious).Row
        Range("A" & vika 2).FormulaR1C1 = "=SUM(R[-21]C:R[-1]C)"
        Range("B" & vika 2).FormulaR1C1 = "=SUM(R[-21]C:R[-1]C)"
        Range("C" & vika 2).FormulaR1C1 = "=SUM(R[-21]C:R[-1]C)"
        'näyttää 5 viimeistä tietoa, muuta lukua
        Application.GoTo Range("A" & vika - 4), True
        Application.EnableEvents = True
        End Sub

        oikeasti vaikka näin...

        Private Sub Worksheet_Change(ByVal Target As Range)
        Dim vika As Long
        Dim kaava As String
        On Error Resume Next
        Application.EnableEvents = False
        vika = Cells.Find(What:="*", After:=[A1], SearchDirection:=xlPrevious).Row
        Range("A" & vika).EntireRow = ""
        vika = Cells.Find(What:="*", After:=[A1], SearchDirection:=xlPrevious).Row
        kaava = "A1:A" & vika
        Range("A" & vika 2).Formula = "=SUM(" & kaava & ")"
        kaava = "B1:B" & vika
        Range("B" & vika 2).Formula = "=COUNTA(" & kaava & ")"
        kaava = "C1:C" & vika
        Range("C" & vika 2).Formula = "=AVERAGE(" & kaava & ")"
        'näyttää 5 viimeistä tietoa, muuta lukua
        Application.GoTo Range("A" & vika - 4), True
        Application.EnableEvents = True
        End Sub


      • kaavoittaja
        kunde kirjoitti:

        oikeasti vaikka näin...

        Private Sub Worksheet_Change(ByVal Target As Range)
        Dim vika As Long
        Dim kaava As String
        On Error Resume Next
        Application.EnableEvents = False
        vika = Cells.Find(What:="*", After:=[A1], SearchDirection:=xlPrevious).Row
        Range("A" & vika).EntireRow = ""
        vika = Cells.Find(What:="*", After:=[A1], SearchDirection:=xlPrevious).Row
        kaava = "A1:A" & vika
        Range("A" & vika 2).Formula = "=SUM(" & kaava & ")"
        kaava = "B1:B" & vika
        Range("B" & vika 2).Formula = "=COUNTA(" & kaava & ")"
        kaava = "C1:C" & vika
        Range("C" & vika 2).Formula = "=AVERAGE(" & kaava & ")"
        'näyttää 5 viimeistä tietoa, muuta lukua
        Application.GoTo Range("A" & vika - 4), True
        Application.EnableEvents = True
        End Sub

        Kiitos vastauksesta. Kokeilin asentaa tuota, mutta en saanut sitä toimimaan.


        Nyt tarvitaan hieman rautalankaa... Office 2010 käytössä.


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

    Luetuimmat keskustelut

    1. Anna minulle anteeksi

      Anna minulle anteeksi. Minä pyydän.
      Ikävä
      158
      2639
    2. Kun viimeksi kohtasitte/näitte

      Mitä olitte tekemässä? Millainen ympäristö oli? Löydetään toisemme...
      Ikävä
      135
      1976
    3. Olet kyllä vaarallisen himokas

      Luova, kaunis, määrätietoinen, pervo, mielenkiintoinen, kovanaama, naisellinen ja erikoinen.
      Ikävä
      108
      1846
    4. Mikä on hän on ammatiltaan?

      Vai tiedätkö mitä kaivattusi tekee työkseen?
      Ikävä
      73
      1500
    5. Mitä ajattelit silloin kun

      Löysit hänet?
      Ikävä
      80
      1466
    6. Anna vielä vähän vihreää valoa

      Teen sitten siirtoni, nainen. Tiedän, että olet jo varovaisesti yrittänyt lähestyä, mutta siitä on jo aikaa. Jos tunnet
      Ikävä
      24
      1452
    7. Syksyinen aamuketju suden

      Hyvää huomenta ja kaunista syyspäivää. 🌞🍁🍂☕
      Ikävä
      227
      1100
    8. Uskotko että kohdataan vielä?

      Kysymys otsikossa, aloitukseen ei muuta lisättävää.
      Ikävä
      65
      969
    9. Miksi homous puhuttaa konservatiiveja vuodesta toiseen?

      Kysymykseen on vastattukin Kansanlähetyksen osalta: "Miksi sukupuoleen ja seksuaalisuuteen liittyvät asiat ovat konserv
      Luterilaisuus
      230
      942
    10. Oletko tutustunut muihin

      Samalla tavalla kuin häneen?
      Ikävä
      73
      920
    Aihe