Mulla on taulukko, jossa on paljon sarakkeita. Yhdessä sarakkeista on päivämääriä 1.1.2003-31.12.2003. Toisessa sarakkeessa on neljä- tai viisinumeroisia kokonaislukuja. Jokaista päivämäärää on noin kymmenkunta.
2003-01-01 3657
2003-01-01 2989
2003-01-01 10103
jne..
2003-01-02 4983
jne..
2003-12-31 2345
Miten voin laskea yhtä päivämäärää koskevat luvut yhteen siten, että saan aikaiseksi taulukon, jossa jokaista päivämäärää on vain yksi ja sitä koskevat luvut olisi yhteenlaskettuna viereisessä sarakkeessa?
Käsi pelillä tämä tietysti onnistuu, mutta siinä menee ikä ja terveys.
2003-01-01 3657
2003-01-01 2989
2003-01-01 10103
jne..
2003-01-02 4983
jne..
2003-12-31 2345
Miten voin laskea yhtä päivämäärää koskevat luvut yhteen siten, että saan aikaiseksi taulukon, jossa jokaista päivämäärää on vain yksi ja sitä koskevat luvut olisi yhteenlaskettuna viereisessä sarakkeessa?
Käsi pelillä tämä tietysti onnistuu, mutta siinä menee ikä ja terveys.
Vastaukset 3
Vanhimmat
Oletko harkinnut Pivot-taulukoiden käyttöä. Sopisi tuohon hyvin.
use array formula
Esim: päivämäärät taul1 A sarake, laskettavat luvut B sarakkeessa.
Kopioi koko A sarake talukkoon2 A sarakkeeseen
suorita tämä makro niin kaikkia päivämääriä jää vain yksi taul2 sarakkeeseen A ( jos päivämäärät ei ala A1 muuta se makroon).
Sub poistaa()
Worksheets("Taul2").Range("A1").Sort _
Key1:=Range("A1")
Set m = Range("A1")
Do While Not IsEmpty(m)
Set ss = m.Offset(1, 0)
If ss.Value = m.Value Then
m.EntireRow.Delete
End If
Set m = ss
Loop
End Sub
Laita taulukkoon 2 soluun B1 kaava
=SUMMA.JOS(Taul1!$A$1:$A$1000;A1;Taul1!$B$1:$B$1000)
ja vedät täyttökahvalla niin pitkälle alas kuin päiviä riittää.