Minulla tulee kaavan tuottamana soluun lukuavo hyvin laajalta alueella 0,0001- 10000. Minun pitää muotoilla solu lukuarvoksi ja desimaaleja neljä, ettei solu näyttäisi nollaa hyvin pienillä arvoilla. Näyttää kuitenkin hassulta kun lukuarvo on tuhansia ja vielä desimaaleja neljä perässä. Muotoilu "yleinen" tuottaa myös desimaaleja tuhottomasti luvun perään.
Voiko jotenkin määrittää että jos luvussa on kokonaisosa niin näytetään vain esim. kaksi desimaalia, ja vasta kun kokonaisosaa ei ole otetaan useampi desimaali käyttöön?
Solun muotoilu ja desmaalien määrä
8
244
Vastaukset
ko. taulukon moduuliin...
muuta solualue sopivaksi nyt A -sarake
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Solu As Range
For Each Solu In Intersect(Target, Columns("A"))
If Not Solu.Value Like "*[!0-9]*" Then
Solu.NumberFormat = "General"
ElseIf Not Solu.Value Like "*[!0-9,]*" And Not Solu.Value Like "*,*,*" Then
Solu.NumberFormat = "0.0000"
Else
Solu.NumberFormat = "General"
End If
Next
End Sub
Keep EXCELing
@Kunde- suurella_tarkkuudella
Tämän siis pitäisi vaikuttaa koko sarakkeen kaikkien rivien muotoiluun? Lisäsin tämän koodin VBA:n moduliin, mutta solukohtainen muotoilu on edelleenkin voimassa. Miten tämän pitäisi oikein toimia, tarvitseeko se jotenkin erikseen käynnistää?
Huonosti luin ...
Sulla olikin siis kaava soluissa, joka muuttuu. Muutin nyt alueeksi A1:A100, jolla tekee muutokset....
helppo fiksata tota solualuetta
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Solu As Range
For Each Solu In Range("A1:A100")
If Not Solu.Value Like "*[!0-9]*" Then
Solu.NumberFormat = "General"
ElseIf Not Solu.Value Like "*[!0-9,]*" And Not Solu.Value Like "*,*,*" Then
Solu.NumberFormat = "0.0000"
Else
Solu.NumberFormat = "General"
End If
Next
End Sub
Keep EXCELing
@Kunde- suurella_tarkkuudella
Joo kaavat ovat soluissa, jotka tuottavat nämä lukuarvot.
Ei ollut tällä fiksatullakaan makrolla mitään vaikutusta alueen desimaaleihin, eli menee solukohtaisen muotoilun mukaisesti. Jokin mättää...
- 3dots
ElseIf Not Solu.Value Like "*[!0-9,]*" And Not Solu.Value Like "*,*,*" Then
Eikö ensimmäinen Not ole tarpeeton? - ORCL
Solukohtaisiksi muotoiluksi kaavoja sisältäviin soluihin (=Format Cells, Number Category: Custom, Type kohtaan): [>=1]#####,00;[<1]0,0000
- suurella_tarkkuudella
No siinä oli helppo ratkaisu peruskäyttäjälle, tuo litania vain tarvittaviin soluihin "oma muotoilu" listalta. Kiitos!
- exexel123d
Ilman makroja.
Esim
Sarakkeelle Conditional Formatting -> Format only cells that contain , Cell value, less than, 1 ->
Format Number, Number , Decimal placess 4
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Tänään pyörit ajatuksissa enemmän, kun erehdyin lukemaan palstaa
En saisi, silti toivon että sinä vielä palaat ja otetaan oikeasti selvää, hioituuko särmät ja sulaudummeko yhteen. Vuod225184- 254358
- 272471
- 342264
- 371998
- 151918
En ole koskaan kokenut
Ennen mitään tällaista rakastumista. Tiedän että kaipaan sinua varmaan loppu elämän. Toivottavasti ei tarvitsisi vain ka191597- 121531
Voi ei! Jari Sillanpää heitti keikan Helsingissä - Hämmästyttävä hetki lavalla...
Ex-tangokuningas on parhaillaan konserttikiertueella. Hän esiintyi Savoy teatterissa äitienpäivänä. Sillanpää jakoi kons211257Kerranki asiat oikein
Ilkka ja muut pienpuolueeet...teitte hyvän työn kun valitsitte pätevän henkilön virkaan eikä kepulle passelia!! Jatkakaa101174