Makrossa "jos virhe"

Makro-Marko

1.
Miten tehdään makroon IF(ISERROR (IFERROR tms. Siis tuohon alla olevaan Sub Laske makroon.
Jos on on virhe niin se pitäisi olla tyhjä "blank".
Osaan kaavoihin tehdä nuo mutta makrot on aika uusi juttu.

"""((((Nauhoitettu makro on niin kauheeta katsoa että sellaista en halua, haluan siistiä koodia siksi yritän koodailla kaavat ynnämuut käsin ja haluan oikeasti vieläpä oppia noit juttuja.))))""""


2. kysymys saisiko rimpsua lyhennettyä jollain tavalla, makroista tulee muuten liian pitkiä jos joutuu jokaisen solun naputtelemaan yksi kerrallaan moduliin. Laskumakroja tulee useita erilaisia sinne tänne ja tänne sinne. Ne ovat paljon pidempiä kuin esimerkki. Mutta sen voisi rajoittaa vaikka 50 riviin jos joku vinkkaa esimerkillä lyhennetyn koodin miten sen voisi tehdä niin että saisi mahdollisesti ideasta kiinni.

Mut jos ei niin olis kiva jos saisi ainakin 1. kysymykseen vastauksia.

Sub Laske()

Worksheets("Sheet1").Select
Range("N2").formula = "=Sum(H2)/((C2)*188)"
Range("N3").formula = "=Sum(H3)/((C3)*188)"
Range("N4").formula = "=Sum(H4)/((C4)*188)"
Range("N5").formula = "=Sum(H5)/((C5)*188)"
Range("N6").formula = "=Sum(H6)/((C6)*188)"
Range("N7").formula = "=Sum(H7)/((C7)*188)"
Range("N8").formula = "=Sum(H8)/((C8)*188)"
Range("N9").formula = "=Sum(H9)/((C9)*188)"
Range("N10").formula = "=Sum(H10)/((C10)*188)"
Range("N11").formula = "=Sum(H11)/((C11)*188)"
Range("N12").formula = "=Sum(H12)/((C12)*188)"
Range("N13").formula = "=Sum(H13)/((C13)*188)"

jatkuu....
jatkuu....


End Sub

3

439

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Makro-Marko

      Makro-Marko täsmentää.

      Range("N"). on alue johon tulos tulee ja jos on virhekoodi niin se pidäis saada "blank"

      • Sub LAske()
        Range("N2").Formula = "=IF(ISERROR(SUM(H2/C2*188)),"""",SUM(H2/C2*188))"
        Range("N2").AutoFill Destination:=Range("N2:N13"), Type:=xlFillDefault
        End Sub


      • Makro-Marko
        kunde kirjoitti:

        Sub LAske()
        Range("N2").Formula = "=IF(ISERROR(SUM(H2/C2*188)),"""",SUM(H2/C2*188))"
        Range("N2").AutoFill Destination:=Range("N2:N13"), Type:=xlFillDefault
        End Sub

        Hyvin toimii, kiitos!


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

    Luetuimmat keskustelut

    1. Eläkeläiset siirrettävä muuttotappioalueille

      Joutoväki pois ruuhkauttamasta elättäjien arkea. Samalla putoaa jokaisen asumiskulut ja rahaa jää enemmän kuluttamiseen.
      Maailman menoa
      470
      3477
    2. SDP pelastaa uppoavan Suomen

      2027 kun SDP voittaa ylivoimaisesti vaalit alkaa Suomen uusi raju syöksy kohti täystyöllisyyttä ja turvallisempaa yhteis
      Maailman menoa
      119
      2648
    3. Kauppalehti - Törkeä skandaali paljastui: Espanja käytti EU-rahoja ihan muuhun kuin piti

      Espanja on käyttänyt miljardeja euroja EU:n elpymisavustuksia eläkkeisiin ja sosiaalimenoihin – ja pyytää lisää. Espanj
      Maailman menoa
      85
      2156
    4. Jopa Espanjassa talous kasvaa, Purra vain irvistelee

      Huomaa kuinka Purra on Suomen historian huonoin miniseteri, joka ei ole saanut aikaiseksi kuin tuhoa, Siis jopa vasemmis
      Maailman menoa
      167
      1987
    5. Orpo ja Purra, käykää hakemassa oppia Espanjasta

      Espanja on näyttänyt kuinka kova työttömyys nujerretaan ja saadaan maan talous palautettua nousu-uralle. Ei ole häpeä kä
      Maailman menoa
      12
      1891
    6. Petteri Orpo on satusetä

      Väittää että työllisyys on Suomessa samalla tasolla kuin hallituksen aloittaessa kesällä 2023. Fakta on, että työllisi
      Maailman menoa
      9
      1887
    7. Mitä haluaisit sanoa hänelle tänään?

      Kerro tähän viestisi. 🍭🍡🍦
      Ikävä
      147
      1816
    8. Minkä ikäinen

      on kaipaamasi ihminen? Minä vuonna syntynyt?
      Ikävä
      95
      1644
    9. Jääkiekon MM:t pitää siirtää MTV:ltä Ylelle

      Persuille ikäviä uutisia taas. . Valtioneuvoston asetuksen mukaan MM-kisat kuuluvat kansallisesti merkittäviin tapahtumi
      Maailman menoa
      45
      1503
    10. Tsemii Pete ja Linda! Tässä tärkeät kellonajat Euroviisut-viikon ohjelmista tv:ssä!

      Euroviisut järjestetään Wienissä Itävallassa 12.-16. toukokuuta. Tsemii Pete ja Linda kisaan! Vetäkää Suomelle voitto Li
      Euroviisut
      36
      1360
    Aihe