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.
VBA pulma...
6
852
Vastaukset
- 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 Excellingkö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
Erään T miehen viimeinen aloitus tänne
Moi Olen kirjoittanut täällä säännöllisesti yli 5 vuotta. Kaivannut kuten kuuluukiin, mutta myös unohdellut ja selvitel364244Sanna vaihteeksi Australian "60 minuuttia" ohjelmassa
Kansanvälinen superstaramme esiintyi tällä kertaa toisella puolen maapalloa esitettävässä ohjelmassa. Kiinnostus on kova1442588Yritykset verolle ja yritystuet 10 mrd. eur/v pois
Kiristämistapauksissa yrityksille sanotaan hei hei. Suomi ei tarvitse yhteiskunnan rahoilla "yrittämistä". Yhteiskunta v992174Sanna Antikainen (ps) : Vornasen pyssy suututti demarit
https://www.suomenuutiset.fi/sanna-antikaisen-kolumni-vornasen-pyssy-suututti-demarit-mutta-kuka-puhuu-totta/ Vornasen221694Yritän saada sinut pois mielestäni ja ajatuksistani nainen
Turhaan. Mitä enemmän yritän, sitä enemmän haluan sinut ja sinua. Miten voitkaan olla niin ihana ja tuntua niin hyvältä.781666Riikka se runnoo työttömyyttä lisää
Menkää töihin! "15–74-vuotiaiden työttömyysasteen trendiluku oli lokakuussa 10,3 prosenttia. Työttömiä oli yhteensä 276131430Nyt meni maku vas.liittoon, kun vaativat minimituntipalkkaa lakiin
Sehän tarkoittaa samalla myös maksimituntipalkkaa, koska kun laki on kerran laadittu, niin sitä on vaikea muuttaa. Työma651426- 691348
Mun on pakko uskaltaa
Mikäköhän olisi pahin skenaario, jos vain laittaisin hänelle viestin, et haluan jutella meistä? Se, että hän vastaisi, e791331- 761293