Saman Makron ajaminen valituilla "sheets"

Makro-Marko

Miten yhden ja saman makron saa ajamaan "vain" valitut sheetit työkirjassa.

Makro ajaetaan esimerkiksi
Sheet1, Sheet3, Sheet5

Sub Laske()
Range("CJ1").Formula = "=IF(ISERROR(SUM(CD1/CC1)*(X1)),""0"",SUM(CD1/CC1)*(X1))"
Range("CK1").Formula = "=IF(ISERROR(SUM(CD1 CE1)/(CC1)*(X1)),""0"",SUM(CD1 CE1)/(CC1)*(X1))"
Range("CL1").Formula = "=IF(ISERROR(SUM(CD1 CE1 CF1)/(CC1)*(X1)),""0"",SUM(CD1 CE1 CF1)/(CC1)*(X1))"
Range("CM1").Formula = "=IF(ISERROR(SUM(CH1/CC1)*(X1)),""0"",SUM(CH1/CC1)*(X1))"
Range("CJ1:CM1").AutoFill Destination:=Range("CJ1:CM16"), Type:=xlFillDefault
End Sub


( En hae Call Macro kun niitä on nyt niin paljon kun innostuin liikaa että homma karkaa käsistä, oikeesti.)

6

338

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • okraM-okraM

      Oheisella makrolla voit suorittaa halutun sub:n valituissa työkirjoissa. Eli sun pitää ensin cotrolli pohjassa valita alapalkista työkirjat missä haluut tuon Laske() makron ajaa.

      Sub Testi()
      Dim taulukot As Worksheet
      For Each taulukko In ActiveWindow.SelectedSheets
      taulukko.Select
      Call Laske
      Next
      End Sub

      • okraM-okraM

        oho tuohon jäi tuo muuttujan määrittely vahingossa, edellä oleva sub pelaa koska siinä muuttujan määrittelyssä on kirjoitusvirhe, mutta se on turha ja sen rivin voi poistaa.


      • Makro-Marko

        "Eli sun pitää ensin cotrolli pohjassa valita alapalkista työkirjat missä haluut tuon Laske() makron ajaa."
        Olen kyl niin aloittelija etten ymmärrätänyt mitä pitää ja mistä pitää tehdä? Mä vaan heitän moduliin koodeja muusta en tiedä.

        Mut hei, eikös allaoleva sivua kait aika paljon tuota sinun koodausta. Tuohan kanssa kutsuu Sub Laske makron. Saiskohan valaistusta miten annetaan käsky että se ajaa vain kyseiset "sheet1", "Sheet2", "Sheet3" taulukot.
        Nyt tuo makro kieltää ajamasta nuo taulukot ja ajaa kaikki muut taulukot aktiivisessa työkirjassa.


        Olen yrittänyt modaa mutta taidot ei riitä, se huutaa aina vaan virhettä. Kun ei osaa niin ei osaa!




        Sub RunRun()
        Dim wS As Worksheet
        For Each wS In ActiveWorkbook.Worksheets
        If wS.Name = "Sheet1" Or _
        wS.Name = "Sheet2" Or _
        wS.Name = "Sheet3" Then
        ''''do nothing
        Else
        wS.Select
        Laske ' 


      • ...
        Makro-Marko kirjoitti:

        "Eli sun pitää ensin cotrolli pohjassa valita alapalkista työkirjat missä haluut tuon Laske() makron ajaa."
        Olen kyl niin aloittelija etten ymmärrätänyt mitä pitää ja mistä pitää tehdä? Mä vaan heitän moduliin koodeja muusta en tiedä.

        Mut hei, eikös allaoleva sivua kait aika paljon tuota sinun koodausta. Tuohan kanssa kutsuu Sub Laske makron. Saiskohan valaistusta miten annetaan käsky että se ajaa vain kyseiset "sheet1", "Sheet2", "Sheet3" taulukot.
        Nyt tuo makro kieltää ajamasta nuo taulukot ja ajaa kaikki muut taulukot aktiivisessa työkirjassa.


        Olen yrittänyt modaa mutta taidot ei riitä, se huutaa aina vaan virhettä. Kun ei osaa niin ei osaa!




        Sub RunRun()
        Dim wS As Worksheet
        For Each wS In ActiveWorkbook.Worksheets
        If wS.Name = "Sheet1" Or _
        wS.Name = "Sheet2" Or _
        wS.Name = "Sheet3" Then
        ''''do nothing
        Else
        wS.Select
        Laske ' 

        Sub RunRun()
        Dim wS As Worksheet
        For Each wS In ActiveWorkbook.Worksheets
        If wS.Name = "Sheet1" Or _
        wS.Name = "Sheet2" Or _
        wS.Name = "Sheet3" Then
        wS.Select
        Laske '  <  <  <  < sub Laske
        End If
        Next
        End Sub


      • Makro-Marko
        ... kirjoitti:

        Sub RunRun()
        Dim wS As Worksheet
        For Each wS In ActiveWorkbook.Worksheets
        If wS.Name = "Sheet1" Or _
        wS.Name = "Sheet2" Or _
        wS.Name = "Sheet3" Then
        wS.Select
        Laske '  <  <  <  < sub Laske
        End If
        Next
        End Sub

        Tunnen itseni tosi tyhmäksi, siitä otettiin välistä pois ainoastaan Else, oppi kuitenkin jotain uutta mikä on hyvä juttu.
        Toi ''''do nothing ei ole aktiivinen kun siinä on ne heittismerkkit edessä. Mutta kiitos!


      • Makro-Marko kirjoitti:

        Tunnen itseni tosi tyhmäksi, siitä otettiin välistä pois ainoastaan Else, oppi kuitenkin jotain uutta mikä on hyvä juttu.
        Toi ''''do nothing ei ole aktiivinen kun siinä on ne heittismerkkit edessä. Mutta kiitos!

        turhat luupit ja jossittelut pois...
        Sub RunRun
        Dim Taulukko as WorkSheet
        For Each Taulukko In Sheets(Array("Sheet1", "Sheet2", "Sheet3"))
        Taulukko.Activate
        Laske
        Next
        End Sub


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

    Luetuimmat keskustelut

    1. Riikka Purran kaudella nousi bensan hinta yli 2 euron

      Muistatteko kuinka edellisen vasemmistohallituksen aikana, ns. Marinin aikakaudella, bensiiniä sai 1,3 euron litrahinnal
      Maailman menoa
      125
      4783
    2. Veli Sofia teki urosmehiläisen työn

      Paljastaessaan kuinka TPS:ssä ei joukkuehenki toimi sooloilijoiden vuoksi, jonka takia koko seura ei pärjää kilpailussa
      Maailman menoa
      6
      3431
    3. Mitäs nyt sijoittajat?

      Pörssit laskevat maailmalla Iranin sodan takia ja muutenkin ovat olleet Trumpin vallan alla epävarmat. Ainoa, mikä on no
      Maailman menoa
      128
      3231
    4. Hjallis Harkimon, 72, Jasmine-rakas, 37, paljastaa suhteen alusta: "Vähän..."

      Liikemies, kansanedustaja Hjallis Harkimo ja tuottaja-juontaja Jasmine Pajari ovat pariskunta. He asuvat yhdessä Sipooss
      Suomalaiset julkkikset
      27
      2669
    5. Unisex-vessat

      Ahdistaa. Miksi kaikki pitää tasapäistää tasa-arvon nimissä? Tasa-arvo on sitä, että kunnioitetaan sukupuolien erilaisu
      Tunteet
      81
      2403
    6. Jutta Larm, 52, haluaa kumota tämän piintyneen ikämyytin

      Oletko samaa mieltä? Jutta Larm on 52-vuotias ja tehnyt pitkän uran yrittäjänä. Hän haluaa kumota tämän piintyneen ikämy
      50 plus
      18
      1793
    7. Henri Alen tilittää yllättäen Vappu Pimiän uudesta MasterChef -pestistä: "Vaikka hän ei..."

      Vappu Pimiä on uusi MasterChef Suomi -tuomari. Hän liittyi uudella MasterChef Suomi -kaudella arvovaltaiseen tuomaristoo
      Suomalaiset julkkikset
      9
      1414
    8. Vastuun ottaminen omasta hyvinvoinnista

      Olen huomannut tuttavapiirissäni ihmisiä, joilla on mt-diagnooseja. Sen sijaan, että millekään asialle yritettäisiin teh
      120
      1283
    9. Minkä kouluarvosanan 4-10 annat Beck-leffoille?

      Vähiin käy ennen kuin loppuu... Beck-elokuvia on tullut tv:stä jopa 2-3 viikossa. Nyt leffojen esitystiheys on muuttunut
      Elokuva
      10
      1249
    10. Jäit kiinni siitä

      että katselet minua. Käänsin pääni, minäkin etsin sinua, ja meidän katseemme kohtasivat. Eikä se haittaa - molemmat ky
      Ikävä
      4
      1178
    Aihe