Moi. Mitenköhän solun värin saisi muuttumaan mikäli solussa oleva luku pienenee tai suurenee? Eli samalla tavalla kuin esim kauppalehden sivuilla jos kurssi laskee niin väri olisi punainen. Koitin ehdollista muotoilua mutta siinä pitää kai olla tietty luku mihin se vertaa kun taas haussa olis että väri muuttuu jos luku kasvaa tai pienenee. Eli siis kurssin mukaan.
Solu muotoilu jos luku muuttuu + tai -
13
1573
Vastaukset
- makron-avulla
Käyttäisin itse luultavasti VBA-makrossa Worksheet.Change-tapahtumaa, jonka käsittelyrutiinissa kopioisin muuttuvan solun aputaulukkoon, johon ehdollinen muotoilu tekisi sitten vertailun.
https://msdn.microsoft.com/en-us/vba/excel-vba/articles/worksheet-change-event-excel - yksinkertaista
Tuohon ei tarvitse muuta kuin solun muotoilussa, kohdassa "Luku" valitsee kohdan "negatiiviset punaisella", etumerkillä tai ilman.
No tässä taas GIF animaatio, joka asettaa taulukon luvun esitystavan niin että negatiiviset luvut näytetään punaisella värillä. https://imgur.com/v0gX3wZ
Kaiketi tämä on tehtävissä Excelilläkin samaan tapaan.- Kundepuu
kannattaisi lukea kysymys uudestaan, ennenkuin postaa ihan huuhaata...
kysyjähän haluaa luvun värin muuttuvan sen mukaan pieneneekö se vaiko kasvaa...
ei onnaa ilman makroa
- Kundepuu
taulukon moduuliin
muuta solu ja värit sopiviksi
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Static Vanha As Double
If Not Intersect(Target, Range("A1")) Is Nothing Then
If Target.Value > Vanha Then
Target.Interior.Color = vbGreen
Else
If Target.Value < Vanha Then
Target.Interior.Color = vbRed
Else
Target.Interior.Color = xlNone
End If
End If
Vanha = Target.Value
End If
End Sub- värinvaihdos
Samoilla linjoilla, laitoin vielä mahdollisuuden eräänlaiselle hystereesille, eli muuttujan "muutosraja" arvolla voi vaikuttaa kuinka pieneen muutokseen reagoidaan.
Värejä voi muutella noiden RGB-funktioiden arvoilla.
Dim temppi As Double
Private Sub Worksheet_Change(ByVal target As Range)
Dim muutosraja As Double: muutosraja = 0.05
If IsNumeric(target) Then
' positiiviset arvot
If target.Value - temppi > muutosraja Then
target.Font.Color = RGB(0, 0, 0)
target.Interior.Color = RGB(0, 255, 0)
' negatiiviset arvot
ElseIf target.Value - temppi < -muutosraja Then
target.Font.Color = RGB(255, 255, 255)
target.Interior.Color = RGB(255, 0, 0)
' muutoin
Else
target.Font.Color = RGB(0, 0, 0)
target.Interior.ColorIndex = xlNone
End If
temppi = target.Value
Else
' jos solussa ei lukuarvo
target.Font.Color = RGB(0, 0, 0)
target.Interior.ColorIndex = xlNone
End If
End Sub - Kundepuu
ei toimi noin oikein, koska ei huomoi solun vanhaa arvoa vaan viimeisen muutoksen arvon missä tahansa solussa ja vertaa siihen eikä solun oikeaan vanhaan arvoon...
el - bugiraportti
Kundepuu kirjoitti:
ei toimi noin oikein, koska ei huomoi solun vanhaa arvoa vaan viimeisen muutoksen arvon missä tahansa solussa ja vertaa siihen eikä solun oikeaan vanhaan arvoon...
elHeh, olet oikeassa. Olisi kannattanut testata useammalla solulla. Pitää viilata Intersect mukaan. Katson samalla saisiko siihen ympättyä muutaman sekunnin vilkkumisen, jolloin olisi hieman visuaalisempi.
- Tämmöinen
Tämä muuttaa alueella alue olevan solun väriä, kun sen arvoa muutetaan.
Väri ei muutu, jos arvo muuttuu jonkin muun solun arvon muuttuessa (solussa on kaava).
Private Sub Worksheet_Change(ByVal Target As Range)
Dim uusi
Dim kaava As String
Dim alue As Range
On Error GoTo err:
Set alue = Range("A1:B5")
If Not Intersect(alue, Target) Is Nothing Then
uusi = Target.Value
kaava = Target.Formula
Application.EnableEvents = False
Application.Undo ' katsotaan vanha arvo
If Target.Value > uusi Then
Target.Interior.Color = vbRed
ElseIf Target.Value < uusi Then
Target.Interior.Color = vbGreen
Else
Target.Interior.Color = xlNone
End If
Target.Formula = kaava
End If
err:
Application.EnableEvents = True
End Sub - Pötkötin
Mihin tollaset systeemit laitetaan, johonkin macroon vai? Ei oo tullu koskaan käytettyä..
- sivullinen3
Kopioi toi kaava, Excelissä sitten klikkaa alhaalta taulukonvalitsinta (esim. Taul1) hiiren oikealla ja valitse "Näytä koodi". VBA editor avautuu. Liitä kopioimasi makro siihen avautuvaan ikkunaan ja sulje Editori.
Huomaa makrosta että toiminto "pelaa" vain alueella A1:B5. Muuta aluetta jos tarvis. - Sivullinen3
Siis jos tarkkoja ollaan, niin toi alku piti olla "Kopioi toi makro".
Sivullinen3 kiittää "Tämmöistä" . Makro pelaa hyvin. Sille löytyy varmasti käyttöä. - Pötkötin
Kiitoksia kaikille, nyt toimii :)
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Kiitos nainen
Kuitenkin. Olet sitten ajanmerkkinä. Tuskin enää sinua näen ja huomasitko, että olit siinä viimeisen kerran samassa paik124070MTV: Kirkossa saarnan pitänyt Jyrki 69 koki yllätyksen - Paljastaa: "Se mikä oli hyvin erikoista..."
Jyrki Linnankivi alias Jyrki 69 on rokkari ja kirkonmies. Teologiaa opiskeleva Linnankivi piti elämänsä ensimmäisen saar822091Hyväksytkö sinä sen että päättäjämme ei rakenna rauhaa Venäjän kanssa?
Vielä kun sota ehkäpä voitaisiin välttää rauhanponnisteluilla niin millä verukkeella voidaan sanoa että on hyvä asia kun5501658Kirjoita yhdellä sanalla
Joku meihin liittyvä asia, mitä muut ei tiedä. Sen jälkeen laitan sulle wappiviestin991395Olet hyvin erilainen
Herkempi, ajattelevaisempi. Toisaalta taas hyvin varma siitä mitä haluat. Et anna yhtään periksi. Osaat myös ilkeillä ja671117Yksi syy nainen miksi sinusta pidän
on se, että tykkään luomusta. Olet luonnollinen, ihana ja kaunis. Ja luonne, no, en ole tavannut vielä sellaista, joka s331048Hyödyt Suomelle???
Haluaisin asettaa teille palstalla kirjoittelevat Venäjää puolustelevat ja muut "asiantuntijat" yhden kysymyksen pohditt216943Hyvää Joulua mies!
Toivottavasti kaikki on hyvin siellä. Anteeksi että olen hieman lisännyt taakkaasi ymmärtämättä kunnolla tilannettasi, o60893- 171864
Paljastavat kuvat Selviytyjät Suomi kulisseista - 1 päivä vs 36 päivää viidakossa - Katso tästä!
Ohhoh! Yli kuukausi viidakossa voi muuttaa ulkonäköä perusarkeen aika rajusti. Kuka mielestäsi muuttui eniten: Mia Mill3838