Vilkkuva solu exceliin

Anonyymi

Voiko Exceliin tehdä ehdollisen muotoilun tai vastaavan avulla, solun jossa täyttöväri tai lukema vilkkuisi?
Tarkoituksena olisi kiinnittää huomio tähän soluun, puuttuvasta lukemasta tai muusta vastaavasta syystä.

18

1180

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Seuraan.
      Aina ei pelkkä punainen varoitusteksti riitä huomion kiinnittämiseksi.

      • Anonyymi

        Kannataa poistaa winkura heti!


    • Nyt toimii alueella A1:A10, mutta helppo lisätä koodissa tarvittavia alueita tai
      soluja
      ko. taulukon moduuliin...

      Option Explicit
      Dim VilkutusSolu As Boolean
      Dim Vilkuta As Boolean

      Private Sub Worksheet_Change(ByVal Target As Excel.Range)
      Dim Solu As Range
      Dim Osoite As String

      Set Alue = Range("A1:A10")
      VilkutusSolu = False

      For Each Solu In Alue
      If Solu.Value = 0 Then
      VilkutusSolu = True
      If Len(Osoite) > 0 Then
      Osoite = Osoite & "," & Solu.Address
      Else
      Osoite = Osoite & Solu.Address
      End If
      End If
      Next

      If VilkutusSolu = True And Vilkuta = False Then
      Set Alue = Range(Osoite)
      Vilkuta = True
      AloitaVilkutus
      Else
      If VilkutusSolu = True And Vilkuta = True Then
      LopetaVilkutus
      Set Alue = Range(Osoite)
      AloitaVilkutus
      Else
      If VilkutusSolu = False And Vilkuta = True Then
      LopetaVilkutus
      Vilkuta = False
      End If
      End If
      End If
      End Sub

      tavalliseen moduuliin...

      Option Explicit
      Public Alue As Range
      Dim SeuraavaAika As Double

      Sub AloitaVilkutus()
      With Alue.Interior
      If .ColorIndex = 3 Then
      .ColorIndex = xlNone
      Else
      .ColorIndex = 3
      End If
      End With
      SeuraavaAika = Now TimeSerial(0, 0, 1)
      Application.OnTime SeuraavaAika, "AloitaVilkutus", , True
      End Sub

      Sub LopetaVilkutus()
      Alue.Interior.ColorIndex = xlNone
      Application.OnTime SeuraavaAika, "AloitaVilkutus", , False
      End Sub

      Keep EXCELing
      @Kunde

      • Anonyymi

        Ei toimi


      • Anonyymi kirjoitti:

        Ei toimi

        Toimii varmasti, jos olet asentanut koodipätkät oikeisiin moduuleihin ohjeiden mukaan ja testannut solualuetta C3:C10..
        Vilutaa alueen soluja sekunnin välein, jos solun arvo=0.

        Keep EXCEling
        @Kunde


      • Anonyymi

        En epäillytkään etteikö "KUNDE":lla olisi tähänkin ratkaisua koodaamalla.
        Toimintaa en tosin pikaisella silmäilyllä täysin sisäistänyt mitä se vaatii soluun. Ilmeisesti joku ehto joka on tosi tai epätosi...


      • Anonyymi
        Anonyymi kirjoitti:

        En epäillytkään etteikö "KUNDE":lla olisi tähänkin ratkaisua koodaamalla.
        Toimintaa en tosin pikaisella silmäilyllä täysin sisäistänyt mitä se vaatii soluun. Ilmeisesti joku ehto joka on tosi tai epätosi...

        Nyt koodissa
        Set Alue = Range("A1:A10")
        VilkutusSolu = False

        For Each Solu In Alue
        If Solu.Value = 0 Then
        VilkutusSolu = True
        If Len(Osoite) > 0 Then
        Osoite = Osoite & "," & Solu.Address
        Else
        Osoite = Osoite & Solu.Address
        End If
        End If
        Next
        eli alueella "A1:A10" minkä tahansa SOLUN ARVO=0, niin vilkuttaa sitä 1 s välein punaisella.
        Muuttamalla aluetta (jos useita eri alueita tai sarakkeitatms) joutuu Alue koodia fiksaamaan ja värikoodin arvoa muuttamalla voi valita muita värejä (3=punainen).

        Keep EXCEling
        @Kunde


      • Anonyymi

        Menipä vaikeesti!


      • Anonyymi
        Anonyymi kirjoitti:

        Nyt koodissa
        Set Alue = Range("A1:A10")
        VilkutusSolu = False

        For Each Solu In Alue
        If Solu.Value = 0 Then
        VilkutusSolu = True
        If Len(Osoite) > 0 Then
        Osoite = Osoite & "," & Solu.Address
        Else
        Osoite = Osoite & Solu.Address
        End If
        End If
        Next
        eli alueella "A1:A10" minkä tahansa SOLUN ARVO=0, niin vilkuttaa sitä 1 s välein punaisella.
        Muuttamalla aluetta (jos useita eri alueita tai sarakkeitatms) joutuu Alue koodia fiksaamaan ja värikoodin arvoa muuttamalla voi valita muita värejä (3=punainen).

        Keep EXCEling
        @Kunde

        Joo, eli vilkuttaa alueella niitä soluja joiden arvo on nolla.

        Monikäyttöisempi olisi jos vilkutussolu/-alue, ja jos-ehtosolu (apusolu jonka arvo olisi tosi tai epätosi) olisivat erilliset.
        Voisi vilkuttaa myös epäkelpoja syötettyjä arvoja, tai tuottaa vilkkuvia varoitustekstejä.


      • Anonyymi kirjoitti:

        Joo, eli vilkuttaa alueella niitä soluja joiden arvo on nolla.

        Monikäyttöisempi olisi jos vilkutussolu/-alue, ja jos-ehtosolu (apusolu jonka arvo olisi tosi tai epätosi) olisivat erilliset.
        Voisi vilkuttaa myös epäkelpoja syötettyjä arvoja, tai tuottaa vilkkuvia varoitustekstejä.

        Perus koodiini helppo lisätä noi esiittämäsi "lisätoiveet"

        Keep EXCELing
        @Kunde


      • Anonyymi
        kunde kirjoitti:

        Perus koodiini helppo lisätä noi esiittämäsi "lisätoiveet"

        Keep EXCELing
        @Kunde

        Helppo on tässä vähän suhteellinen käsite. 😄


      • Anonyymi
        Anonyymi kirjoitti:

        Ei toimi

        Toimii.
        Vilkuttaa punaista täyttöväriä jos solu on tyhjä tai lukuarvo on nolla.


      • Anonyymi
        kunde kirjoitti:

        Perus koodiini helppo lisätä noi esiittämäsi "lisätoiveet"

        Keep EXCELing
        @Kunde

        Raiskasin vähän Kunden hengentuotetta, nyt vilkkuva solu on A1 ja vilkutuksen ehto on solussa B1. Vilkutuskoodi on entisellään.

        Option Explicit
        Dim VilkutusSolu As Boolean
        Dim Vilkuta As Boolean

        Private Sub Worksheet_Change(ByVal Target As Excel.Range)
        Dim Solu As Range
        Dim Ehto As Range
        Dim Osoite As String

        Set Alue = Range("A1")
        Set Ehto = Range("B1")
        VilkutusSolu = False

        For Each Solu In Ehto
        If Solu.Value = 0 Then
        VilkutusSolu = True
        'If Len(Osoite) > 0 Then
        'Osoite = Osoite & "," & Solu.Address
        'Else
        'Osoite = Osoite & Solu.Address
        'End If
        End If
        Next

        If VilkutusSolu = True And Vilkuta = False Then
        'Set Alue = Range(Osoite)
        Vilkuta = True
        AloitaVilkutus
        Else
        If VilkutusSolu = True And Vilkuta = True Then
        LopetaVilkutus
        'Set Alue = Range(Osoite)
        AloitaVilkutus
        Else
        If VilkutusSolu = False And Vilkuta = True Then
        LopetaVilkutus
        Vilkuta = False
        End If
        End If
        End If
        End Sub


      • Anonyymi
        kunde kirjoitti:

        Perus koodiini helppo lisätä noi esiittämäsi "lisätoiveet"

        Keep EXCELing
        @Kunde

        On kun ensin korjaa virheet.


    • Anonyymi

      Visual BASICilla minäkin olen tehnyt paljon EXCEL-juttuja ja opetinkin erästä naissihteeriä kauan sitten.

      • Anonyymi

        Heh! Visual BASIC on ohjelmoitityökalu!


    • Anonyymi

      Libressä ainakin sellainen kuin "Functio tyyli"

    • Anonyymi

      Samallailla kuin värin vaihto mutt määritä siihen aika ja toinen väri mukaan!

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

    Luetuimmat keskustelut

    1. Suomen markka otettiin käyttöön vuonna 1860

      Suomi käytti vuoteen 1840 asti rahayksikkönään rinnakkain Ruotsin riikintaalareita ja Venäjän ruplaa. Tämän jälkeen oli
      Maailman menoa
      43
      9708
    2. Kaivatullesi viesti ensi vuoteen?

      Kerro meneekö naiselle vai miehelle ja vähintään yksi tunniste, esim. kirjain.
      Ikävä
      103
      5127
    3. "Mä elän vieläkin"

      Ikurin turbiini vetäisi taannoin lainabiisin Topin (RIP också) ja kumppaneiden kanssa. Toivottavasti on yläkerrassa kunn
      Tampere
      59
      4347
    4. Pate Mustajärvi on kuollut

      Ihan pari tuntia sitten. Että sellaista. https://www.is.fi/viihde/art-2000011715177.html
      Maailman menoa
      138
      2907
    5. Yksityinen sektori aiheuttanut Suomen taantuman

      Investointien sijasta nostaneet voitot osinkoina omistajille. Ehdotan korjausliikkeenä yksityisen sektorin sosialisoimi
      Maailman menoa
      137
      2689
    6. Nyt Yle otti silmätikukseen sisäministeri Rantasen

      Aivan erinomaista työtä tehnyt sisäministeri Mari Rantanen on saanut paljon aikaiseksi. Maahanmuuttoon ja maahanmuuttaji
      Maailman menoa
      178
      2538
    7. Miten ikinä kelpaisin sulle

      Sinä saat niiltä muilta naisilta paljon enemmän, mitä minulta... Tai mihin minä olisin valmis. Enkä edes olisi niin tait
      Ikävä
      28
      1932
    8. Milloin näit kaivattusi edellisen kerran?

      Olitteko juttusilla vai sivusta vain? Miten reagoit?
      Ikävä
      20
      1677
    9. Edes vitamiinit eivät taanneet loputonta elämää

      Nimittäin niistä rahaa itselleen taikonut tohtori siirtyi tuonpuoleiseen.
      Maailman menoa
      36
      1550
    10. Liikaa vauhtia

      Nuorukainen 17v. on ajanut 114 km/h 60 km:n alueella Nesteen kohdalla ja onneksi poliisi oli paikalla ja hurjastelu lopp
      Suomussalmi
      19
      1015
    Aihe