"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ä
      157
      2507
    2. Kun viimeksi kohtasitte/näitte

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

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

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

      Löysit hänet?
      Ikävä
      76
      1398
    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ä
      21
      1357
    7. Syksyinen aamuketju suden

      Hyvää huomenta ja kaunista syyspäivää. 🌞🍁🍂☕
      Ikävä
      227
      1100
    8. Oletko tutustunut muihin

      Samalla tavalla kuin häneen?
      Ikävä
      71
      890
    9. Miksi homous puhuttaa konservatiiveja vuodesta toiseen?

      Kysymykseen on vastattukin Kansanlähetyksen osalta: "Miksi sukupuoleen ja seksuaalisuuteen liittyvät asiat ovat konserv
      Luterilaisuus
      220
      886
    10. Uskotko että kohdataan vielä?

      Kysymys otsikossa, aloitukseen ei muuta lisättävää.
      Ikävä
      54
      857
    Aihe