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

849

    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. 109
      3596
    2. Putin lähti takki auki sotaan....

      Luuli, että kolmessa päivässä hoidetaan, nyt on mennyt 3,5 vuotta eikä voitosta tietoakaan. Kaiken lisäksi putin luuli,
      Maailman menoa
      76
      3148
    3. SDP ylivoimainen ykkönen

      En ole koskaan viitsinyt käydä äänestämässä, mutta nyt SDP:n etumatka on niin kutkuttava, että pakkohan se on vaivautua.
      Maailman menoa
      83
      2598
    4. Suomalainen lähti ilman takkia sotaan

      Malli oli "kajander", johon kuului pelkästään kokardi, ja sotilaan itse metsästä katkoma puukeppi ryssien huitomiseen.
      Maailman menoa
      6
      2394
    5. Polttomoottoriauto on köyhän merkki

      Kun ei ole varaa ostaa sähköautoa, niin joutuu köyhän autoa käyttämään.
      Maailman menoa
      217
      2252
    6. Patteriauton ovia ei saatu auki - kuljettaja koki hirvittävän kuoleman!

      ”Oviongelma johti kuskin kuolemaan kolarissa – tämä ratkaisu saatetaan kieltää kokonaan Sivulliset pyrkivät tempomaan a
      Maailman menoa
      30
      2141
    7. Mies älä

      Odota enää vaan toimi. Pieni vinkkivitonen 🫰💥
      Ikävä
      42
      919
    8. Harmittaa ettei paluuta entiseen enää ole

      Paluuta entiseen ei ole koska pilasit kaiken.
      Ikävä
      95
      918
    9. Mä tiedän

      Että sä tiedät, että mä tiedän, että sä tiedät. Me molemmat tiedetään. Onko näin?
      Ikävä
      52
      806
    10. Haapaveille jotain uutta!

      Huoltoasema Haapavein keskustaan tulossa. Semmoista Jeppasissa jaappasevat.
      Haapavesi
      16
      760
    Aihe