Solujen väri

Väriä elämään

Kuinka Vba:n kautta saadaan soluille väri esim. soluihin D6:L6

Ajatellaanpa vaikka että solujen väri olisi tummanharmaa.

18

480

    Vastaukset 18

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Ookos koskaan kokeillut makronauhoitinta?
      Tommosta se aikaan...
      Sub Macro1()
      '
      ' Macro2 Macro
      ' Macro recorded 2.3.2011 by kunre
      '

      '
      Range("D6:L6").Select
      Selection.Interior.ColorIndex = 56
      End Sub

      toki sitä voi kaunistella ja poistella yleensä 80-90% turhaa skeidaa ja saada se helpommin luettavaksi ja paremmin toimivaksi...

      Sub Macro1()
      Range("D6:L6").Interior.ColorIndex = 56
      End Sub

      Keep EXCELing
      @Kunde

    • Black&White

      hmmm. Tarkoitin että väri olisi vakiona pohjassa valmiina noissa soluissa eli ei tarvitsisi painaa nappia.

      Makron osaan kyllä nauhoittaa.

      • ghjgfjghk

        Siis tarkoitat että ne solut olisi aina sen värisiä kun avaat uuden taulukon. Silloin kannattaa tehdä template missä ne solut värjätty ja avata aina se.


    • Black&White

      Tarkoitan että kun avaan juurikin tämän ks. exel tiedoston niin Taul.1:sen solut D6:L6 olisivat harmaita.

      Mielellään niin että niiden väriä ei käyttäjä pystyisi muuttamaan excel puolelta. Toki samaisiin soluihin tulee pystyä syöttämään numeroarvoja.

      Tiedä sitten onko tämä edes mahdollista.

      • tarpeet vaihtui toiseksi alkuperäisestä, mutta eipä murehdita sitä...

        moduuliin...
        Sub Auto_Open()
        Worksheets("Sheet1").Range("D6:L6").Interior.ColorIndex = 56
        End Sub

        ja kyseessäolevan TAULUKON MODUULIIN...

        Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        Range("D6:L6").Interior.ColorIndex = 56
        End Sub

        Keep EXCELing
        @Kunde


    • Black&White

      Works like a Charm
      TänX !

    • solujen värit

      Kysytäämpäs täältä jos joku osais auttaa.

      Eli saako tuota automaattista solujen värjäytymistä jotenkin pois? Eli jos esim. solu H29 on vihreä, tulee sen alapuolella olevastakin H30 solusta vihreä mikäli lisään rivejä. Tämähän ei suuri vaiva olisi käsin vaihtaa tyhjäksi, mutta kun noita rivejä tulee aika paljon lisää automaattisesti välisummia laskettaessa, ja näin ollen noita värejä on soluissa joissa niitä ei kuuluisi olla. Muistelin että jossain olisi ollut asetus automaattisesta muotoilusta, jossa uusiin soluihin ei mitään muotoiluja kopioituisi, mutta enpäs tällaista löydä mistään valikoista enkä excelin ohjeista.

      Suuret kiitokset jos joku ratkaisun keksii.

      • Private Sub Worksheet_Change(ByVal Target As Range)
        Range("H:H").Interior.ColorIndex = xlNone
        Range("H9").Interior.ColorIndex = 56
        End Sub


    • Väreistä vielä

      En tiedä oliko tuo vastaus edes minulle, mutta tavoite olisi siis, että jos solu on muuten tyhjä, mutta väri on joku muu kuin valkoinen, muuttuisi se itsestään valkoiseksi, eli tyhjäksi. Kun noita tyhjiä värillisiä soluja tulee siis ympäri taulukkoa kolmeen eri sarakkeeseen (H, L, M) ja lukemattomille eri riveille, aina kun joutuu laskemaan välisummat.

      Koska jos rekisteriin lisää uusia henkilöitä, tulee välisummat poistaa aakkostamisen ajaksi. Käsittääkseni. Kun rekisteri on taas järjestetty aakkosten ja muiden perusteella, välisummat lisätään uudelleen ja tulee noita tyhjiä rivejä välisummien kohdille. Niissä on vaan sitten noita värejä miten sattuu ylläolevien solujen mukaisesti.

      Nauhoitin makron tuohon operaatioon, mutta haluaisin lisätä siihen sen että se poistaisi nuo värilliset tyhjät solut.


      Toinen makroon lisättävä juttu olisi se, että välisummien jälkeinen loppusumma tulisi heti viimeisen henkilön perään, eikä kymmeniä rivejä alapuolelle. Jos taas alueen valitsee käsin, tulee loppusumma tietysti haluttuun kohtaan, mutta koska rekisteriin on lisätty henkilöitä, ei tämä käsin merkitty alue enää päde kun makroa käytetään seuraavan kerran.

      Hienoa jos joku edelleen jaksaisi vaivautua auttamaan!

    • "Eli saako tuota automaattista solujen värjäytymistä jotenkin pois? Eli jos esim. solu H29 on vihreä, tulee sen alapuolella olevastakin H30 solusta vihreä mikäli lisään rivejä"

      Joopa joo
      ihan eri juttu...
      no katellaan kun keritään

    • Väreistä vielä

      Joo selitin tuon ekalla kerralla vähän eri tavalla, sama tavoite kuitenkin edelleen. Meinaan vaan että tulos on sama lisääpä rivin itse vai tuleeko se automaattisesti välisummien mukana, värit siihen kuitenkin kopioituu haluamattani. Itse en tuota omin neuvoin saa kyllä ratkaistua eikä netistä neuvoja ole löytynyt joten kiitokset jo tässä vaiheessa kun asiaan jaksat paneutua!

      • taulukon moduuliin...

        Private Sub Worksheet_Change(ByVal Target As Range)
        Range("H:H, L:L, M:M").SpecialCells(xlCellTypeBlanks).Interior.ColorIndex = xlNone
        End Sub

        toinen kyssäri:
        missä loppusumma?


    • loppusumma

      Loistavaa! Aloin jo olla siinä uskossa että ei edes ole mahdollista, mutta olihan se näköjään. Kiitos paljon! :)

      Loppusumman pitäis tulla siis aina eri kohtaan kun uusia henkilöitä on lisätty. Esim. tällä hetkellä loppusumma on solussa F371, mutta jos rekisteriin lisätään vaikka 2 henkilöä, tulisi loppusumman olla solussa F373 jne. Eli en voi aluetta käsin valita, koska alareunasta jää aina puuttumaan lisättyjen henkilöiden verran soluja. Vaikea selittää. Jos taas valitsen koko F-sarakkeen klikkaamalla F:ää, loppusumma tulee kymmeniä soluja liian alas, eli "paperin alareunaan". Tämä taas tuntuu tulevan ihan sattuman varaiseen paikkaan, mutta kuitenkin aivan liian alas, josta se pitää aina käsin nostaa oikeaan kohtaan. Pieniä mutta kovasti helpottavia asioita, jos toimisi oikein.

      Eli lähinnä hakisin sitä, että kun välisummat lisätään, osais se automaattisesti päätellä missä on ensimmäinen kokonaan tyhjä rivi ja laittaisi siihen loppusumman. Makro tavallaan itsestään valitsisi F-sarakkeesta pelkästään siihen asti, mihin henkilöt loppuvat, sitten loppusumma tulisi heti viimeisen henkilön perään. Lieneekö mitenkään tehtävissä.


      Jos tuon saisi vielä toimimaan, olisi lopputulos todella hyvä, koska koko operaation saisi kuitattua lisättyjen henkilöiden jälkeen makron avulla sekunnissa, kun ennen puhuttiin minuuteista.

      • Taulukon moduuliin...

        Private Sub Worksheet_Change(ByVal Target As Range)
        On Error Resume Next
        Application.ScreenUpdating = False
        Application.EnableEvents = False
        Range("H:H, L:L, M:M").SpecialCells(xlCellTypeBlanks).Interior.ColorIndex = xlNone
        vika = Range("F65536").End(xlUp).Row
        If vika = 1 Then
        Range("F" & vika 1) = Application.WorksheetFunction.Sum(Range("F1:F1"))
        Else
        Range("F" & vika) = Application.WorksheetFunction.Sum(Range("F1:F" & vika - 1))
        End If
        Range("F" & vika) = Application.WorksheetFunction.Sum(Range("F1:F" & vika - 1))
        Application.EnableEvents = True
        Application.ScreenUpdating = True
        End Sub
        Sub reset()
        Application.EnableEvents = True
        Application.ScreenUpdating = True
        End Sub


        Keep EXCELing
        @Kunde


    • ....

      If vika = 1 Then
      Range("F" & vika 1) = Application.WorksheetFunction.Sum(Range("F1:F1"))
      Else
      Range("F" & vika) = Application.WorksheetFunction.Sum(Range("F1:F" & vika - 1))
      End If
      Range("F" & vika) = Application.WorksheetFunction.Sum(Range("F1:F" & vika - 1))

      Mikä on viimeisen rivin tarkoitus?

      • painovirhepaholainen ;-)
        oikea koodi

        Dim vika As Long
        Private Sub Worksheet_Change(ByVal Target As Range)
        On Error Resume Next
        Application.ScreenUpdating = False
        Application.EnableEvents = False
        Range("H:H, L:L, M:M").SpecialCells(xlCellTypeBlanks).Interior.ColorIndex = xlNone
        vika = Range("F65536").End(xlUp).Row
        If vika = 1 Then
        Range("F" & vika 1) = Application.WorksheetFunction.Sum(Range("F1:F1"))
        Else
        Range("F" & vika) = Application.WorksheetFunction.Sum(Range("F1:F" & vika - 1))
        End If
        Application.EnableEvents = True
        Application.ScreenUpdating = True
        End Sub
        Sub reset()
        Application.EnableEvents = True
        Application.ScreenUpdating = True
        End Sub


    • loppusumma

      Kiitokset vaivannäöstä! Valitettavasti tulos ei ollut ihan halutunlainen tällä kertaa mutta en viitsi vaivata enempää. Tuo toi mukanaan enemmän ongelmia kuin helpotusta. :) Ehkä on käyttäjässä vika tällä kertaa mutta en saanut toimimaan niin kuin toivoisi.

      Nyt kun lisään välisummat, tulee loppusumma kahteen kertaan ja toiseen loppusummaan on vielä lisätty toinen loppusumma. Jos poistan jotain sarakkeesta F, sen yläpuolella olevaan soluun tulee joskus nolla, en tiedä millä perusteella. Tai jos lisään rivejä, tulee loppuun myöskin nolla jne. Pitäsi tajuta enemmän tuosta koodista että vikaa osaisi etsiä. Toimii jotenkin omituisesti nyt.

      Kiitokset kuitenkin tähän astisista avuista. Hienoa kun joku jaksaa auttaa. Joka tapauksessa taulukko toimii nyt jo paljon paremmin kuin alussa ja sai palauteltua muutenkin vähän excelin käyttöä mieleen noita pähkäillessä.

      • Ei siihen mitään loppusummia pidä lisätä, se laskee ne automaattisesti...
        testasin tosin sen vain aloittamalla tyhjällä sarakkeella ja lisäämällä uuden rivin/rivejä ja ainakin oletukseni toimii niinkuin halusit....
        siis ei mitään omia kaavoja

        Keep EXCELing
        @Kunde


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

    Luetuimmat keskustelut

    1. Älä unohda minua

      Nainen ethän unohda minua. Asiat olisivat voineet mennä toisin, olisi vain pitänyt uskaltaa lähestyä sinua kun annoit si
      Ikävä
      84
      802
    2. On väärin

      Tykätä ja haluta sua kun tilanne täysin mahdoton mutta minkäs teet. Mun sisällä roihuaa 🔥 kunpa tietäisit mitä sä minus
      Ikävä
      43
      672
    3. Jorma Uotinen läväytti härskin heiton - Paljastus uudesta TTK-romanssista?

      Tuomari Jorma Uotisen linja on välillä hyvinkin rohkea TTK:ssa. Hän näpäytti Jaakko Parkkalille ja Kastanja Rauhalalle v
      Tanssii tähtien kanssa
      12
      658
    4. Valtuuston kokous

      Kyl tuo Anita Ruokani on ihan pihalla,käy aika hitaalla.
      Kemijärvi
      50
      599
    5. Tosi kiva on

      Joo. Mitä olisit menettänyt jos olisit paljastanut itsesi?
      Ikävä
      65
      581
    6. Mitä tunteita

      Sulla vielä on?
      Ikävä
      77
      524
    7. Nyt on nyt

      Turha miettiä menneitä tapahtumia. Niitä ei saa tekemättömäksi. Tärkeintä on mitä tekee nyt ja tulevaisuudessa. Korjausl
      Ikävä
      49
      441
    8. Miehelle

      ❤️
      Ikävä
      26
      419
    9. Näin on!

      Päästy taas iltaan! Jee, päiviä taas yksi vähemmän meidän kohtaamiseen! ❤️
      Ikävä
      42
      394
    10. Saat mut hymyileen suuresti, ja odotan koska saan antaa sulle haleja ja pusuja ihan oikeasti

      En tiedä mikä sussa on, mut sun koko olemus ja ilmeet, ja persoona ja ulkonäkö saa mut vaan hyvälle tuulelle. Oot vaan s
      Ikävä
      14
      389
    11. Martina avautuu

      Martina on päässyt kertomaan Feminassa konkurssistaan. On viettänyt monia unettomia öitä. On elänyt ikäänkuin painekatti
      Kotimaiset julkkisjuorut
      120
      378
    12. Kadutko mies?

      Silloin kuin vielä yritin lähestyä, etkä tarttunut siihen. Asioista pitäisi voida aina keskustella.
      Ikävä
      29
      359
    13. Hyvästi Iisalmen Citymarket.

      Nyt riitti huolimaton kassatoiminta!Nyt sattuu joka toisella käynnillä samaa,joko laskutettu samasta tuotteesta liian mo
      Iisalmi
      18
      352
    14. Hyvää huomenta

      Eräälle Naiselle ❤️‍🩹
      Ikävä
      52
      348
    15. Se oikea.....

      Hän ei ole sinulle se oikea, jos hän pitää sinua vain yhtenä vaihtoehtona.
      Ikävä
      56
      347
    16. Kyllä ymmärrän sinua

      Mutta silti se sattuu….
      Ikävä
      26
      346
    17. Mikä fiilis

      Onko asiat niin kuin hyvin?
      Ikävä
      59
      343
    18. Eläkeikä nousee 70 vuoteen. Joudunko palaamaan työelämään?

      Nyt se on sitten päätetty, että eläkeikä Suomessa nostetaan 70 vuoteen. https://www.is.fi/politiikka/art-2000012324133.h
      Maailman menoa
      115
      340
    19. Kaivatun haluaminen

      seksuaalisesti herättää syvältä selkärangasta esiin villieläimellisiä vaistoja sekä haluja peittäen sivistyneen ihmisenä
      Ikävä
      27
      334
    20. Mitä järkeä kiusata ihmisiä palstalla

      Luuleeko ne kiusaajat oikeasti, että joku tosissaan ajattelisi niiden haukkujen olevan itselle? Hukkaan menee kiusaajill
      Ikävä
      89
      328
    Aihe