Tietojen siirto tyyppinumeron perusteella

toiseen taulukkoon....

Hei!

Ongelmani liittyy kahden taulukon tietoihin jotka pitäisi yhdistää yhteen tauluun.
Elikkä ensimmäisessä taulukossa A sarakkeessa on tyyppinumero ja B sarakkeessa osan tieto. Koska osan tietoja on paljon niin tyyppinumeroita on peräkkäin 3 -18 kappaleita ja sen jälkeen B sarakkeessa on osan tiedot. Esimerkin vastaavalla tavalla:

Tyyppin. Osan tieto
111   mutteri M12
111   Pirkka 2 kpl
111   pultti M12
112   Mutteri M10
112   Prikka 4 kpl
112   Pultti M10
112   Punainen maali
112   mittari
113   kotelo
113   keltainen maali
Jne….


Nämä tiedot pitäisi siirtää toiseen taulukkoon (esim toiseen välilehteen), niin että A sarakkeessa pysyisi tyyppinumero, mutta kaikki osan tiedot siirrettäisiin transporen komennon avulla vaakatasoon, niin että ensimmäinen tieto tulee b sarakkeeseen, toinen tieto tulee c sarakkeeseen, kolmas tulee d sarakkeeseen jne.


Tyyppinumeroita on pelkästään 450 kappaleita ja osan tietoja on muutama tuhat.
Jos jollakin olisi tähän oikeaa makroa, niin olisin enemmänkin kuin kiitollinen.

1

301

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • moduuliin...
      muuttele taulukoiden nimet sopiviksi

      Option Explicit
      Dim EiTupla As New Collection
      Sub Kopioi()
      Dim Tiedot As Variant
      Dim Alue As Range
      Dim i As Integer
      On Error Resume Next
      Application.ScreenUpdating = False
      Application.DisplayAlerts = False
      Worksheets("Sheet1").Activate
      Worksheets("Sheet2").Cells.Clear
      PoistaTuplat
      For i = 1 To EiTupla.Count
      Set Alue = EtsiJaSiirrä(EiTupla(i), Columns("A")).Offset(0, 1)
      Tiedot = Alue
      Tiedot = Application.WorksheetFunction.Transpose(Tiedot)
      Range("Sheet2!A" & i) = EiTupla(i)
      Range("Sheet2!B" & i).Resize(Alue.Columns.Count, Alue.Rows.Count) = Tiedot
      Next i
      Worksheets("Sheet2").Cells.EntireColumn.AutoFit
      Application.ScreenUpdating = True
      Application.DisplayAlerts = True
      End Sub
      Sub PoistaTuplat()
      Dim solu As Range
      Dim Vika As Double
      On Error GoTo virhe
      Vika = Range("A65536").End(xlUp).Row
      For Each solu In Range("A1:A" & Vika)
      If Not IsEmpty(solu) Then
      EiTupla.Add solu.Value, CStr(solu.Value)
      End If
      Next solu
      Exit Sub
      virhe:
      Resume Next
      End Sub
      Function EtsiJaSiirrä(Haettava As Variant, _
      Hakualue As Range) As Range

      Dim solu As Range
      Dim ekaosoite As String

      With Hakualue
      Set solu = .Find( _
      What:=Haettava, _
      LookIn:=xlValues, _
      LookAt:=xlWhole, _
      SearchOrder:=xlByRows, _
      SearchDirection:=xlNext, _
      MatchCase:=False, _
      SearchFormat:=False)
      If Not solu Is Nothing Then
      Set EtsiJaSiirrä = solu
      ekaosoite = solu.Address
      Do
      Set EtsiJaSiirrä = Union(EtsiJaSiirrä, solu)
      Set solu = .FindNext(solu)
      Loop While Not solu Is Nothing And solu.Address ekaosoite
      End If
      End With
      End Function

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

    Luetuimmat keskustelut

    1. Riikka Purran kaudella nousi bensan hinta yli 2 euron

      Muistatteko kuinka edellisen vasemmistohallituksen aikana, ns. Marinin aikakaudella, bensiiniä sai 1,3 euron litrahinnal
      Maailman menoa
      126
      4818
    2. Veli Sofia teki urosmehiläisen työn

      Paljastaessaan kuinka TPS:ssä ei joukkuehenki toimi sooloilijoiden vuoksi, jonka takia koko seura ei pärjää kilpailussa
      Maailman menoa
      12
      3488
    3. Mitäs nyt sijoittajat?

      Pörssit laskevat maailmalla Iranin sodan takia ja muutenkin ovat olleet Trumpin vallan alla epävarmat. Ainoa, mikä on no
      Maailman menoa
      151
      3302
    4. Hjallis Harkimon, 72, Jasmine-rakas, 37, paljastaa suhteen alusta: "Vähän..."

      Liikemies, kansanedustaja Hjallis Harkimo ja tuottaja-juontaja Jasmine Pajari ovat pariskunta. He asuvat yhdessä Sipooss
      Suomalaiset julkkikset
      28
      2726
    5. Unisex-vessat

      Ahdistaa. Miksi kaikki pitää tasapäistää tasa-arvon nimissä? Tasa-arvo on sitä, että kunnioitetaan sukupuolien erilaisu
      Tunteet
      84
      2463
    6. Jutta Larm, 52, haluaa kumota tämän piintyneen ikämyytin

      Oletko samaa mieltä? Jutta Larm on 52-vuotias ja tehnyt pitkän uran yrittäjänä. Hän haluaa kumota tämän piintyneen ikämy
      50 plus
      18
      1813
    7. Henri Alen tilittää yllättäen Vappu Pimiän uudesta MasterChef -pestistä: "Vaikka hän ei..."

      Vappu Pimiä on uusi MasterChef Suomi -tuomari. Hän liittyi uudella MasterChef Suomi -kaudella arvovaltaiseen tuomaristoo
      Suomalaiset julkkikset
      9
      1434
    8. Vastuun ottaminen omasta hyvinvoinnista

      Olen huomannut tuttavapiirissäni ihmisiä, joilla on mt-diagnooseja. Sen sijaan, että millekään asialle yritettäisiin teh
      121
      1309
    9. Minkä kouluarvosanan 4-10 annat Beck-leffoille?

      Vähiin käy ennen kuin loppuu... Beck-elokuvia on tullut tv:stä jopa 2-3 viikossa. Nyt leffojen esitystiheys on muuttunut
      Elokuva
      10
      1259
    10. Jäit kiinni siitä

      että katselet minua. Käänsin pääni, minäkin etsin sinua, ja meidän katseemme kohtasivat. Eikä se haittaa - molemmat ky
      Ikävä
      4
      1258
    Aihe