Tuoterakennekaava...tuskaa

Sanneliini

Kun excelissä on tuoterakenne, jossa on tuotenumero, ja tämä tuote pitää sisällää useita tuotteita. Nämä ovat kahdessa sarakkeessa, ja järjestelmä antaa jokaisen rakenneosan eteen myös tuotenumeron, eli näin:
11 12
11 13
11 14
22 23
22 24
22 25
Jossa siis tuotenumero on 11, ja se sisältää osat 12, 13 ja 14. Seuraava tuotenumero on 22, joka sisältää osat 23, 24 ja 25.
Nyt tämä tuhansien rivien setti pitäisi saada muotoon, että tuotenumero esiintyy vain kerran ja sen perässä siihen liittyvät osat, eli
11 12 13 14
Jokainen omassa sarakkeessa. Millä ihmeen kaavalla tämä onnistuisi?? Auttakaa gurut neitoa hädässä.

6

505

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Nimimerkki

      Siis tuo lista on taulukko Osista, jos sinulla ei ole erikseen taulukkoa Tuotteista, siis jokainen tuote vain kerran, niin tehe sellainen vaikka "Erikoissuodatuksella", ja vain ainutkertaiset tietueet. laita nämä tuotteet omalle taulukolle ja osat omalle taulukolle, näin on myös parempi jatkossa niin voit ideoida enemmän uusia ominaisuuksia myöhemmin( suodatus, lisää tuote, lisää osa, listaa tuote, listaa vain tuotteen osat jne....)

      http://office.microsoft.com/fi-fi/excel/HP030734251035.aspx?pid=CH062527971035

      Uusi taulukko (tästä eteen päin sheet2)
      Valitse uudesta taulukosta solu mihin haluat tuotteet
      Valitse Tiedot-valikosta Suodata ja valitse sitten Erikoissuodatus.
      Merkka alue sarakkeesta jossa on tuotteen numerot (valitse myös otsikko mukaan)
      valitse Kopioi toiseen paikkaan. Kirjoita sitten soluviittaus Kopioi-ruutuun.
      Valitse Vain ainutkertaiset tietueet -valintaruutu.


      Nyt kun sinulla on lista Tuotteista, vain yksi ilmentymä per tuote, voi laittaa kaavan ( oletuksena nyt A-Sarake), laita B-sarakkeeseen seuraava kaava:

      =IF($A7INDEX(Sheet1!$B:$C;MATCH($A7;Sheet1!$B:$B;0) COLUMN()-COLUMN($B:$B);1);"";INDEX(Sheet1!$B:$C;MATCH($A7;Sheet1!$B:$B;0) COLUMN()-COLUMN($B:$B);2))

      Laitoin tuohon kaavaan dollari merkit jotta voit kopioida kaavan sekä alas että sivulle tarpeen mukaan.

      jos haluat voin selittää myöhemmin kun kerkeän mitä tuossa kaavasssa on, testasin tuon pienellä testi taulukolla ja toimi ainakin minulla

      • Nimimerkki

        siis kaavassa noi Osat ovat taulukossa "Sheet1", tuossa taulukossa tuote numerot sarakkeessa B ja osanumerot sarakkeessa C

        katso miten sinulla on, ja muuta tarpeen mukaan

        voisi tietenkin nimetä noi sarakkeet ja käyttää tuota nimeä kaavassa, mutta sehän onkin sitten toinen juttu


      • Nimimerkki

        edellinen kaava nimiä käyttäen:

        =IF($A7INDEX(Sheet1!$B:$C;MATCH($A7;Sheet1!$B:$B;0) COLUMN()-COLUMN($B:$B);1);"";INDEX(Sheet1!$B:$C;MATCH($A7;Sheet1!$B:$B;0) COLUMN()-COLUMN($B:$B);2))

        muotoon

        =IF($A7INDEX(osatTuotteenNroJaOsanNro;MATCH($A7;osatTuotteenNro;0) COLUMN()-COLUMN(tuotteetEkanOsanSarake);1);"";INDEX(osatTuotteenNroJaOsanNro;MATCH($A7;osatTuotteenNro;0) COLUMN()-COLUMN(tuotteetEkanOsanSarake);2))

        Jossa

        osatTuotteenNroJaOsanNro = taulukko jossa osat ja sarakkeet jossa on tuotteen numerot ja osien nro ( eli olisiko sarakkeet A ja B)

        osatTuotteenNro = taulukko jossa osat ja sarake jossa on tuotteen nro ( olisiko sarake A)

        tuotteetEkanOsanSarake = taulukko jossa on tuotteet ja sarake johon laitat ekan osan numeron ( olisiko sarake B tai C )


      • Sanneliini
        Nimimerkki kirjoitti:

        edellinen kaava nimiä käyttäen:

        =IF($A7INDEX(Sheet1!$B:$C;MATCH($A7;Sheet1!$B:$B;0) COLUMN()-COLUMN($B:$B);1);"";INDEX(Sheet1!$B:$C;MATCH($A7;Sheet1!$B:$B;0) COLUMN()-COLUMN($B:$B);2))

        muotoon

        =IF($A7INDEX(osatTuotteenNroJaOsanNro;MATCH($A7;osatTuotteenNro;0) COLUMN()-COLUMN(tuotteetEkanOsanSarake);1);"";INDEX(osatTuotteenNroJaOsanNro;MATCH($A7;osatTuotteenNro;0) COLUMN()-COLUMN(tuotteetEkanOsanSarake);2))

        Jossa

        osatTuotteenNroJaOsanNro = taulukko jossa osat ja sarakkeet jossa on tuotteen numerot ja osien nro ( eli olisiko sarakkeet A ja B)

        osatTuotteenNro = taulukko jossa osat ja sarake jossa on tuotteen nro ( olisiko sarake A)

        tuotteetEkanOsanSarake = taulukko jossa on tuotteet ja sarake johon laitat ekan osan numeron ( olisiko sarake B tai C )

        Heips ja kiitos vinkeistä. Alan tänään työstämään exceliä että josko se siitä oikenisi :-)


    • tekee just sen mitä pyytelet

      moduuliin...
      Sub KopioiPoista()
      Dim vika As Integer
      Dim vika2 As Integer
      Dim vika3 As Integer
      Dim i As Integer
      On Error Resume Next
      vika = Range("A65536").End(xlUp).Row
      For i = vika To 1 Step -1
      If i = 1 Then Exit Sub
      If Range("A" & i) = Range("A" & i).Offset(-1, 0) Then
      vika2 = Range("A" & i).End(xlToRight).Column
      vika3 = Range("A" & i).Offset(-1, 0).End(xlToRight).Column
      Range("B" & i).Resize(1, vika2 - 1).Copy Destination:=Range("A" & i).Offset(-1, vika3)
      Range("A" & i).EntireRow.Delete
      End If
      Next
      End Sub

      • Nimimerkki

        Älä käytä tätä ellei sinulla ole muita tietoja kun nuo tuote nro ja osien nro.

        jos sinulla on esim muita tietoja per osa ( mitat, koko, hinta, varasto, kuvia, jne...) joudut kuseen tuon kanssa. ja jos myöhemmin haluat lisää tietoja per osat joudut taas hajoittaan taulukon osiin. jos haluat muita tietoja osille käytä omaa taulukkoa tuotteille ja omaa taulukkoa osille.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Useita puukotettu Tampereella

      Mikäs homma tämä nyt taas on? "Useaa henkilöä on puukotettu Tampereen keskustassa kauppakeskus Ratinan lähistöllä." ht
      Tampere
      210
      3879
    2. Kuka rääkkää eläimiä Puolangalla?

      Poliisi ampui toistakymmentä nälkiintynyttä eläintä Puolangalla Tilalta oli ollut karkuteillä lähes viisikymmentä nälkii
      Puolanka
      63
      2465
    3. Asiakas iski kaupassa varastelua tehneen kanveesiin.

      https://www.iltalehti.fi/kotimaa/a/33a85463-e4d5-45ed-8014-db51fe8079ec Oikein. Näin sitä pitää. Kyllä kaupoissa valtava
      Maailman menoa
      391
      2306
    4. Leipivaaran päällä on kuoleman hiljaista.

      Suru vai suuri helpotus...
      Puolanka
      47
      2233
    5. Meneeköhän sulla

      oikeasti pinnan alla yhtä huonosti kuin mulla? Tai yhtä huonosti mutta jollain eri tyylillä? Ei olisi pitänyt jättää sua
      Ikävä
      32
      1531
    6. Muutama kysymys ja huomio hindulaisesta kulttuurista.

      Vedakirjoituksia pidetään historiallisina teksteinä, ei siis "julistuksena" kuten esimerkiksi Raamattua, vaan kuten koul
      Hindulaisuus
      515
      1295
    7. Jos ei tiedä mitä toisesta haluaa

      Älä missään nimessä anna mitään merkkejä kiinnostuksesta. Ole haluamatta mitään. Täytyy ajatella toistakin. Ei kukaan em
      Ikävä
      93
      1271
    8. Määpä tiijän että rakastat

      Minua nimittäin. Samoin hei! Olet mun vastakappaleeni.
      Ikävä
      56
      1257
    9. Koska näit kaivattusi viimeksi

      Milloin tapasit rakkaasi? Ja etenikö suhde yhtään?
      Ikävä
      72
      1186
    10. Jumala puhui minulle

      Hän kertoi sinusta asioita, joiden takia jaksan, uskon ja luotan. Hän kuvaili sinua minulle ja pakahduin onnesta kuulles
      Ikävä
      125
      1136
    Aihe