Hei!
Olen tekemässä ehdollista muotoilua, solusta jossa on 10 merkkiä. Haluaisin että solusta 7 ensimmäistä merkkiä ratkaisee arvon (tosi tai epätosi), jolloin ehdollinen muotoilu värjää solun esim. punaiseksi.
Ongelma on siinä että soluja on noin 500 ja ne pitäisi saada ryhmittäin värjätyksi. Solun 7 ensimmäistä merkkiä ratkaisee mihin tuoteperheeseen se kuuluu ja haluaisin että värjäys tapahtuu sen mukaan.
Mahtaisiko jollakin olla jotain apuja tähän?
Olisiko toinen vaihtoehto tehdä makro joka tekee alkuperäisestä solusta kopion ja poistaisi samalla ylimääräiset merkit ja muodostaisin ehdollisen muotoilun tämän kopioidun solun avulla.
Kiitoksia etukäteen!
Mahtavaa kun on henkilöitä jotka jaksavat auttaa muita hädässä :)
Terveisin
Wanabee Excelguru
Olen tekemässä ehdollista muotoilua, solusta jossa on 10 merkkiä. Haluaisin että solusta 7 ensimmäistä merkkiä ratkaisee arvon (tosi tai epätosi), jolloin ehdollinen muotoilu värjää solun esim. punaiseksi.
Ongelma on siinä että soluja on noin 500 ja ne pitäisi saada ryhmittäin värjätyksi. Solun 7 ensimmäistä merkkiä ratkaisee mihin tuoteperheeseen se kuuluu ja haluaisin että värjäys tapahtuu sen mukaan.
Mahtaisiko jollakin olla jotain apuja tähän?
Olisiko toinen vaihtoehto tehdä makro joka tekee alkuperäisestä solusta kopion ja poistaisi samalla ylimääräiset merkit ja muodostaisin ehdollisen muotoilun tämän kopioidun solun avulla.
Kiitoksia etukäteen!
Mahtavaa kun on henkilöitä jotka jaksavat auttaa muita hädässä :)
Terveisin
Wanabee Excelguru
Vastaukset 4
Vanhimmat
Syötä ehdollisen muotoilun kaavan arvoksi esim.
=POIMI.TEKSTI(A1;1;7)="tähän halutut 7 merkkiä" ja valitse sitten sopiva väri.
Kiitoksia oivasta vinkistä. Ongelmaksi muodostu se että ehdolliseen muotoiluun voi laittaa ainoastaan 3 tekijää. Joten en saa kaikkia tarvittavia tuoteperheen tuotteita värjättyä.
Olisiko vielä jotain ideaa?
solumuotoilulla saat pari lisää, mutta koodilla sitten reippaasti lisää...
taulukon moduuliin...
ja nyt sarake C, muuta sopivaksi ja 7 ekaa kanssa
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim vika As Integer
vika = Range("C65536").End(xlUp).Row
For Each solu In Range("C1:C" & vika)
Select Case Left(solu, 7)
Case 1111111
solu.Interior.ColorIndex = 3
Case 1111112
solu.Interior.ColorIndex = 4
Case 1111113
solu.Interior.ColorIndex = 5
Case 1111114
solu.Interior.ColorIndex = 7
Case Else
solu.Interior.ColorIndex = xlNone
End Select
Next
End Sub
tavalliseen moduuliin...
tolla saat selville colorindexin numeroita vastaavat värit...
Sub Värit()
On Error Resume Next
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim i As Long
For i = 0 To 56
Cells(i 1, 1).Interior.ColorIndex = i
Cells(i 1, 1).Value = "[Väri " & i & "]"
Cells(i 1, 2).Font.ColorIndex = i
Cells(i 1, 2).Value = "Väri " & i
Next i
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub
Keep Excelling
@Kunde
Kiitoksia oivasta koodin pätkästä!