VBA pulma...

köhelö

Yritän tehdä vba ohjelmaan toiminnon, jolla jokaisesta excelin näkyvissä olevasta taulukosta pitäisi saada laskettua yhteen tietyt solut. Kaikki yhteen laskettavat solut ovat samoilla paikoilla(esim.A1)...
Ongelma on minulle liian visainen, joten ajattelin josko jollakin teistä olisi hyviä ideoita asian toteuttamiseen. Kiittäen jo etukäteen ajastanne ja neuvoistanne.

6

854

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • kenties

      jotain tämmöistä:
      Sub summaa()
      Dim summa As Double
      For i = 1 To Worksheets.Count
      Sheets(i).Select
      summa = summa Cells(1, 1).Value
      Next i
      Sheet1.Select
      Cells(5, 1).Value = summa
      End Sub

      tämä laskee kaikista sheeteistä A1:t yhteen ja sijoittaa tuloksen sheet1:n soluun A5

      • köhelö

        Mitenkäs tossa kaavassa muutetaan noita soluja joita lasketaan yhteen... ja onko mahdollista laskea yhteen vain taulukoista jotka ovat VBA:ssa merkattu näkyviksi...

        Tästä oli jo kyllä paljon apua joten kiitos!


      • köhelö
        köhelö kirjoitti:

        Mitenkäs tossa kaavassa muutetaan noita soluja joita lasketaan yhteen... ja onko mahdollista laskea yhteen vain taulukoista jotka ovat VBA:ssa merkattu näkyviksi...

        Tästä oli jo kyllä paljon apua joten kiitos!

        Selvisi jo miten solu valitaan, mutta onko mahdollista valita tälläisella koodilla useampia soluja yhteenlaskettavaksi. Esim A1 yhteen ja tulos A5 ja B1 yhteen ja tulos B5 jne...

        Kiitoksia jo etukäteen vaivan näöstä...


      • Nimimerkki
        köhelö kirjoitti:

        Selvisi jo miten solu valitaan, mutta onko mahdollista valita tälläisella koodilla useampia soluja yhteenlaskettavaksi. Esim A1 yhteen ja tulos A5 ja B1 yhteen ja tulos B5 jne...

        Kiitoksia jo etukäteen vaivan näöstä...

        Voisitko käyttää seuraavanlaista:

        A5 soluun kaava:
        =sum(ekanTaulunNimi:viimeisenTaulunNimi!A1)

        B5 soluun kaava:
        =sum(ekanTaulunNimi:viimeisenTaulunNimi!B1)

        esimerkiksi:

        Sheet1 ja soluun A5 kaava:
        =sum(Sheet1:Sheet3!A1)

        Sheet1 ja soluun B5 kaava:
        =sum(Sheet1:Sheet3!B1)

        Testasin kolmella taulukolla ( Sheet1, Sheet2 ja Sheet3 ) toimi hyvin, sitten muutin taulukoiden nimiä, toimi myös sen jälkeen


      • jos työkirja sisältää kaavioita. On mennyt käsitteet Sheet ja Worksheet vähän sekaisin...
        keep Excelling


      • köhelö kirjoitti:

        Mitenkäs tossa kaavassa muutetaan noita soluja joita lasketaan yhteen... ja onko mahdollista laskea yhteen vain taulukoista jotka ovat VBA:ssa merkattu näkyviksi...

        Tästä oli jo kyllä paljon apua joten kiitos!

        Sub summaa()
        Dim summa As Double
        For i = 1 To Worksheets.Count
        If Worksheets(i).Visible = True Then
        summa = summa Worksheets(i).Range("A1")
        End If
        Next i
        Worksheets(1).Range("F1") = summa
        End Sub


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

    Luetuimmat keskustelut

    1. Nainen kokki autossa kammottavan kuoleman sähköauto-Teslan syttyessä tuleen.

      https://www.is.fi/autot/art-2000011652873.html Näin vaarallisia sähköautopalot voivat olla.
      Maailman menoa
      74
      4989
    2. Persuja ei aluevaltuustoissa näy

      Ei tunnu persuja paljon paikalliset asiat kiinnostavan, vaan ainoastaan ulkomaalaiset, joku Israel ja Trumpin fanitus.
      Maailman menoa
      11
      3369
    3. Päivän Riikka: Uudenkaupungin autotehdas hiljeni

      Näin ne 100 000 uutta pysyvää ei-tempputyötä yksityiselle sektorille tämän hallituksen ansiosta syntyy. Työntekijöille j
      Maailman menoa
      24
      2680
    4. Kerro kaivattusi nimi tai nimikirjaimet

      🌠 Tähdenlento! Kirjoittamalla kaivattusi nimen tai nimikirjaimet tähän, saattaa toiveesi toteutua.
      Ikävä
      57
      1737
    5. Miksi pitäisit enemmän

      Minusta kuin siitä toisesta?
      Ikävä
      47
      1566
    6. Tämmönen höpsö

      Höpönassu mä olen. En mikään erikoinen…hölötän välillä ihan levottomia. Tykkäisit varmasti jos olisin siellä sun vieress
      Suhteet
      44
      1346
    7. Mitä meidän välillä

      Tulee tapahtumaan vai tuleeko mitään?
      Ikävä
      94
      1332
    8. Alkuvuodesta poistuu työttömyyskorvaus kaikilta joilla on säästössä rahaa

      Tippuu korvaukselta iso määrä työttömiä.
      Maailman menoa
      225
      1170
    9. Hiljaisuus

      Tarkoittaa välinpitämättömyyttä, henkistä väkivaltaa ja kiusaamista. Olet valinnut hiljaisuuden.
      Ikävä
      71
      1015
    10. IS Viikonloppu 29.-30.11.2025

      Antti Skytältä 3-tasoinen ristikko. Pääkuvassa on harhauttava elementti, mikä saattaa hidastaa myös muiden kuin minun ra
      Sanaristikot
      52
      897
    Aihe