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

855

    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. Minkähän takia ns. persuille ei tunnu työ maistuvan?

      Vaikuttavat olevan joutoväkeä syystä tai toisesta  – työttömiä tai työeläkeloisia. Muiden rahoilla pötköttelevää väkeä,
      Maailman menoa
      63
      2458
    2. Suomen veroaste 5 %-yks liian matala

      Palauttamalla kokonaisveroaste 1990-luvun tasolle saadaan hyvinvointivaltion palvelut rahoitettua ilman velan ottoa.
      Maailman menoa
      103
      2125
    3. Kolme neljästä suomalaisesta kannattaa miljonääriveroa

      Kertoo vasemmistoliiton teettämä kysely. Veron ulkopuolelle jätettäisiin asunto. "Puolet vastaajista oli sitä mieltä, e
      Maailman menoa
      97
      2087
    4. Olit ihan

      Kiihkona silloin. Sen näki ja lähes tunsi. Ei tainnut olla kaukana et olisit vetänyt lähellesi jos siihen olisi hetki tu
      Ikävä
      24
      2037
    5. MTV: Harvinainen haastattelu! Vappu Pimiä kommentoi vihdoinkin uutta TTK-juontajaa

      TTK-juontajaspekuloinnit käyvät edelleen kuumana. Kenet sinä haluaisit uudeksi TTK-juontajaksi? Kommentoi alle! Lue,
      Suomalaiset julkkikset
      14
      1855
    6. Evoluutioon ja alkuräjähdykseen uskominen vaatii todella vahvaa uskoa

      Että tyhjästä syntyi ja kehittyi kaikki se mitä näemme ympärillämme.
      Luterilaisuus
      563
      1773
    7. Yleveron tuotto siirrettävä S-ryhmälle

      Yleisradio on mukana kansanmurhassa. Tuollaista ei voi tukea verovaroin. S-ryhmä on ainoa selkärankainen iso toimija S
      Maailman menoa
      16
      1638
    8. Mikä ihme teitä lieksalaisia tuossa

      p*rs*reiässä niin kiinnostelee? Että siitä pitää päntönnään huutaa?
      Lieksa
      55
      1448
    9. Kemet lomautukset

      Onkohan tuo oikein lain mukaista toimintaa jatkaa jo lomautettuina olevien uudelleen lomautusta yhdenvertaisuuden ja tas
      Suomussalmi
      41
      1403
    10. Mistä juttelit viimeisen kerran

      Mistä juttelitte viimeisen kerran ikävöinnin kohteen kanssa? Irl tai viesteillä.
      Ikävä
      77
      1370
    Aihe