Solun muotoilu ja desmaalien määrä

suurella_tarkkuudella

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?

8

268

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • 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

    1. Mira Luoti ja Julkkisselviytyjät 2017 - Ketä kuumottaa juuri nyt?

      HS: Tässä ohjelmassa Mira Luoti kertoi kokeneensa seksuaalista väkivaltaa "PMMP-yhtyeen Mira Luoti kertoo Ylen uudessa
      Kotimaiset julkkisjuorut
      73
      2015
    2. Mietin että

      Onko tarinallamme vielä luvussa tilaa kohtaamiselle vai jääkö se tähän.
      Ikävä
      102
      1883
    3. Kaipaatko sinä

      Yhtään meidän katseita
      Ikävä
      142
      1773
    4. Oletko samaa mieltä

      Että on parempi olla erillään?
      Ikävä
      97
      1421
    5. Törkeä eläinsuojelurikos Sonkajärvellä

      Pohjois-Savossa Sonkajärvellä noin 40 kissaa ja reilut 10 koiraa on jouduttu lopettamaan kaltoinkohtelun vuoksi, kertoo
      Sonkajärvi
      35
      1389
    6. MESTARI SIVALTAA JÄLLEEN

      https://www.is.fi/politiikka/art-2000011436243.html Suomen ainoa Mestari lausuu tosiasiat Sannasta , Tuomiojasta ja hil
      Kajaani
      317
      1265
    7. Kirjallinen varoitus

      On annettu eräälle henkilölle. hyssytellään kuitenkin asiasta
      Äänekoski
      60
      1229
    8. Jotkut ihmiset pelkäävät syöpää sairastavaa

      On hauskaa, kun kertoo jollekin, että "minulla on syöpä". Jotkut käyttäytyvät kuin se olisi tarttuva tauti. Eivät uskall
      Sinkut
      130
      1112
    9. Julkisuuden henkilön päiväin päätös

      Sitä vaan, että kyllä nyt kaikki tietävät kuka oli Eemeli Peltola (kansanedustaja, joka päätti päivänsä eduskuntatalossa
      Sinkut
      276
      1066
    10. Kuulin juttua että Jeesus on kopioitu krishnasta

      Pitääkö paikkansa että kertomukset ovat samat kummankin uskonnon kirjoissa
      Hindulaisuus
      446
      963
    Aihe