Hakufunktio

Seuraavanlainen kaava pitäisi saada aikaiseksi:

Ensimmäisellä välilehdellä on sarakkeita

Esim.

Tili   Kp   Summat
1234   12   123 €
1234   20   140 €
1353   13   165 €
1234   12   135 €
1353   13   175 €
1234   20   155 €

Näistä pitäisi saada poimittua toiselle välilehdelle tiedot aakkostaen, yhdistettynä ja yhteenlaskettuna.

Tili   Kp   Summat
1234   12   258 €
1234   20   295 €
1353   13   340 €

Menisikö tämä jollakin phaku tai vhaku funktiolla?

Tämä olisi tärkeä saada toimimaan.
81715
Äänestä

Muut lukivat myös

Vastaukset 8

Vanhimmat

helpoiten taitais onnistu Pivot-taulukolla

      
Sum of Summat      
Tili   Kp   Total
1234   12   258
    20   295
1353   13   340
Grand Total   893

tai sitten tämäkin voisi toimia,tiedot sheetillä1 a2:c7 alueella,
sheetillä2 a2-a4 tilit,b2-b4 kp ja c2-c4 tämä kaava:
=SUMPRODUCT((Sheet1!$A$2:$A$7=A2)*(Sheet1!$B$2:$B$7=B2);Sheet1!$C$2:$C$7)

Äänestä
  • haluaisin, että tuo sama asettelu pysyy myös toisella sheetillä, ja että tilit näytetään akkostaen, ja ryhmiteltynä. En ainakaan pivotilla tätä saanut. Olisiko jotenkin mahdollista?

    Eli, kun ekalla sheetillä on esim.

    Tili Kp Summat
    1234 12 123 €
    1234 20 140 €
    1353 13 165 €
    1234 12 135 €
    1353 13 175 €
    1234 20 155 €


    ja tokalla
    ----------------------

    Tili Kp Summat
    1234 12 258 €
    1234 20 295 €
    1353 13 340 €

    SUMPRODUCT meni vähän sekavaksi. Tilien määrä kun vaihtelee, ja niitä syötetään tiettyyn matriisiin aina uudestaan. Noita tilejä saattaa olla vaikka 20 erilaista.

    Taitaa mennä vaikeaksi...

    Äänestä

  • -Hansuli- kirjoitti:

    haluaisin, että tuo sama asettelu pysyy myös toisella sheetillä, ja että tilit näytetään akkostaen, ja ryhmiteltynä. En ainakaan pivotilla tätä saanut. Olisiko jotenkin mahdollista?

    Eli, kun ekalla sheetillä on esim.

    Tili Kp Summat
    1234 12 123 €
    1234 20 140 €
    1353 13 165 €
    1234 12 135 €
    1353 13 175 €
    1234 20 155 €


    ja tokalla
    ----------------------

    Tili Kp Summat
    1234 12 258 €
    1234 20 295 €
    1353 13 340 €

    SUMPRODUCT meni vähän sekavaksi. Tilien määrä kun vaihtelee, ja niitä syötetään tiettyyn matriisiin aina uudestaan. Noita tilejä saattaa olla vaikka 20 erilaista.

    Taitaa mennä vaikeaksi...

    ihan perusjuttuhan toi on ;-). Muuta nimet Taul1 ja Taul2 itsellesi sopivaksi

    Sub Tilit()
    Dim Vika As Integer
    Dim i As Integer
    On Error GoTo virhe
    Application.ScreenUpdating = False
    Worksheets("Taul2").Cells = ""
    Range("Taul1!A1").CurrentRegion.Copy Destination:=Range("Taul2!A1")
    Worksheets("Taul2").Activate
    Range("A1").CurrentRegion.Sort Key1:=Range("A1"), Order1:=xlAscending, Key2:=Range("B1") _
    , Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
    False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2 _
    :=xlSortNormal
    Vika = Range("A65536").End(xlUp).Row
    For i = Vika To 2 Step -1
    If Range("A" & i) = Range("A" & i - 1) Then
    If Range("A" & i).Offset(0, 1) = Range("A" & i - 1).Offset(0, 1) Then
    Range("A" & i).Offset(-1, 2) = Range("A" & i).Offset(-1, 2) Range("A" & i).Offset(0, 2)
    Range("A" & i).EntireRow.Delete
    End If
    End If
    Next
    virhe:
    Application.ScreenUpdating = False
    End Sub

    Äänestä

  • -Hansuli- kirjoitti:

    haluaisin, että tuo sama asettelu pysyy myös toisella sheetillä, ja että tilit näytetään akkostaen, ja ryhmiteltynä. En ainakaan pivotilla tätä saanut. Olisiko jotenkin mahdollista?

    Eli, kun ekalla sheetillä on esim.

    Tili Kp Summat
    1234 12 123 €
    1234 20 140 €
    1353 13 165 €
    1234 12 135 €
    1353 13 175 €
    1234 20 155 €


    ja tokalla
    ----------------------

    Tili Kp Summat
    1234 12 258 €
    1234 20 295 €
    1353 13 340 €

    SUMPRODUCT meni vähän sekavaksi. Tilien määrä kun vaihtelee, ja niitä syötetään tiettyyn matriisiin aina uudestaan. Noita tilejä saattaa olla vaikka 20 erilaista.

    Taitaa mennä vaikeaksi...

    No tuossahan jo tulikin sinulle sopiva ratkaisu Kundelta. Ei pivotilla eikä kaavalla pääse tuohon samaan...
    Ei se kaikille näytä olevan vaikeaa, huoh...

    Äänestä

  • Kunde kirjoitti:

    ihan perusjuttuhan toi on ;-). Muuta nimet Taul1 ja Taul2 itsellesi sopivaksi

    Sub Tilit()
    Dim Vika As Integer
    Dim i As Integer
    On Error GoTo virhe
    Application.ScreenUpdating = False
    Worksheets("Taul2").Cells = ""
    Range("Taul1!A1").CurrentRegion.Copy Destination:=Range("Taul2!A1")
    Worksheets("Taul2").Activate
    Range("A1").CurrentRegion.Sort Key1:=Range("A1"), Order1:=xlAscending, Key2:=Range("B1") _
    , Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
    False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2 _
    :=xlSortNormal
    Vika = Range("A65536").End(xlUp).Row
    For i = Vika To 2 Step -1
    If Range("A" & i) = Range("A" & i - 1) Then
    If Range("A" & i).Offset(0, 1) = Range("A" & i - 1).Offset(0, 1) Then
    Range("A" & i).Offset(-1, 2) = Range("A" & i).Offset(-1, 2) Range("A" & i).Offset(0, 2)
    Range("A" & i).EntireRow.Delete
    End If
    End If
    Next
    virhe:
    Application.ScreenUpdating = False
    End Sub

    hienosta koodista! Joku mulla silti tossa tökkää.

    Worksheets("Taul2").Cells = ""

    Pitääkö tohon lainausmerkkejen sisään määritellä mitään? Tuohan tarkoittaa tyhjää. Liitin tuon koodin painikkeen click-tapahtumaan, mutta mitään ei tapahdu vaikka painaa.

    Äänestä

  • -Hansuli- kirjoitti:

    hienosta koodista! Joku mulla silti tossa tökkää.

    Worksheets("Taul2").Cells = ""

    Pitääkö tohon lainausmerkkejen sisään määritellä mitään? Tuohan tarkoittaa tyhjää. Liitin tuon koodin painikkeen click-tapahtumaan, mutta mitään ei tapahdu vaikka painaa.

    Onkos sulla Taul2 nimistä taulukkoa?

    Äänestä

  • Kunde kirjoitti:

    Onkos sulla Taul2 nimistä taulukkoa?

    Välilehti yksi on Taul1 ja välilehti kaks on Taul2.

    Mistäköhän voisi johtua. Hitsi, tää on niin lähellä... :)

    Äänestä

  • -Hansuli- kirjoitti:

    Välilehti yksi on Taul1 ja välilehti kaks on Taul2.

    Mistäköhän voisi johtua. Hitsi, tää on niin lähellä... :)

    hipsaa toi rivi
    'Worksheets("Taul2").Cells = ""
    ja kokeile sitten toimiiko. Kyllä koodin pitäisi toimia ihan OK.

    Äänestä

Kommentoi aloitusta


-Hansuli- kirjoitti:

Seuraavanlainen kaava pitäisi saada aikaiseksi:

Ensimmäisellä välilehdellä on sarakkeita

Esim.

Tili   Kp   Summat
1234   12   123 €
1234   20   140 €
1353   13   165 €
1234   12   135 €
1353   13   175 €
1234   20   155 €

Näistä pitäisi saada poimittua toiselle välilehdelle tiedot aakkostaen, yhdistettynä ja yhteenlaskettuna.

Tili   Kp   Summat
1234   12   258 €
1234   20   295 €
1353   13   340 €

Menisikö tämä jollakin phaku tai vhaku funktiolla?

Tämä olisi tärkeä saada toimimaan.

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu