Minulla on iso Excel taulukko. Tietoja tuotteista siten, että yksi rivi on yksi tuote useine eri tietoineen. Nyt minun pitäisi kyetä hajottamaan kahdessa solussa oleva tieto (varaosat, maa) eri soluihin siten, että muut tämän rivin tiedot kopioituvat muuttumattomina. Käytännössä siis columneissa A, B, ... R tietoja ja sitten columnissa S varaosat pilkulla eroteltuna (esim "kiu12, kiu15, ut4") ja T maat pilkulla eroteltuna (esim. "Fin, Swe"). Nyt minun pitäisi muodostaa tässä tapauksessa tästä tuotteesta 6 riviä siten, että columneissa A, B, ... R tiedot säilyvät muuttumattomana ja S on ensimmäisellä&toisella rivillä kiu12, kolmannella&neljännellä kiu15 ja viidennellä&kuudennella ut4 ja kolumnissa T maat Fin, Swe, Fin, Swe, Fin, Swe -> kaikki kombinaatiot omina riveinään. Maiden ja varaosien määrä vaihtelee. Tämä taas tarvitaan ERP integraation muutosta varten ja minulla menisi useita päiviä tämän tekemiseen manuaalisesti...
Suurkiitokset Excel kikkailijoille, jos vain saisin tähän jotain apuja!
Sihteerikkö
Solun sisällön hajottaminen riveille / rivien monistaminen
3
177
Vastaukset
"Tämä taas tarvitaan ERP integraation muutosta varten ja minulla menisi useita päiviä tämän tekemiseen manuaalisesti..."
no nythän meille jää aikaa kikkailla jotain muuta 2-3 päivää -1 minuutti sihteerikön kanssa... ;-)
en tiedä halusitko siirtää tiedot erilliseen taulukkoon tai vain muokata jo olemassa olevaa taulukkoa, mutta nyt helppo tehdä mitä haluaa taulukoille.
Kopioi Taul1 taulukon "Huuhaa" taulukkoon ja tekee tarvittavat jutskat
moduuliin...
muuta taulukoiden nimet sopiviksi
Sub Järjestä()
Dim S As Variant
Dim T As Variant
Dim i As Long
Dim j As Long
Dim vika As Long
Dim nimi As String
On Error Resume Next
nimi = Worksheets("Huuhaa").Name
If Not Err.Number = 0 Then Sheets.Add.Name = "Huuhaa"
On Error GoTo 0
Worksheets("Huuhaa").Cells = ""
vika = Worksheets("Taul1").Range("S65336").End(xlUp).Row
For Each solu In Worksheets("Taul1").Range("S1:S" & vika)
S = Split(solu, ",")
T = Split(solu.Offset(0, 1), ",")
For i = 0 To UBound(S)
For j = 0 To UBound(T)
solu.EntireRow.Copy Worksheets("Huuhaa").Range("A65536").End(xlUp).Offset(1, 0)
Worksheets("Huuhaa").Range("S65536").End(xlUp) = S(i)
Worksheets("Huuhaa").Range("T65536").End(xlUp) = T(j)
Next
Next
Next
End Sub- Avut on
Super - kiitokset kunde!
Ja kuten aina, niin tällä päästiin hyvälle avulle; speksaus...
Tätä tarvitsisi vielä laajentaa siten, että nyt näitä hajotettavia columneja onkin rinnakkaisia värien alla useita (16 eri väriä). Eli värit ovat omissa columneissaan ja niiden alla sitten aina toistuu nämä varaosat ja maa columnit. Nythän tällä sai kyllä ajettua yhden värin kivasti, mutta ei jonnistunut laajentamaan tätä tällaiseen tapaukseen, jossa pitäisi suorittaa rinnakkain tämä useasta eri soluparista samalta riviltä ilman, että alkupään tuotteet alkavat generoitua useaan kertaan, jos näitä lähdetään hajottamaan peräkkäin...
Kiittää & kumartaa jo etukäteen!
missäs nää värit on?
laita selvennystä niin rukataan...
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 1723264
Kun viimeksi kohtasitte/näitte
Mitä olitte tekemässä? Millainen ympäristö oli? Löydetään toisemme...1392137Olet kyllä vaarallisen himokas
Luova, kaunis, määrätietoinen, pervo, mielenkiintoinen, kovanaama, naisellinen ja erikoinen.1112116- 921915
Anna vielä vähän vihreää valoa
Teen sitten siirtoni, nainen. Tiedän, että olet jo varovaisesti yrittänyt lähestyä, mutta siitä on jo aikaa. Jos tunnet271633- 841630
Miksi homous puhuttaa konservatiiveja vuodesta toiseen?
Kysymykseen on vastattukin Kansanlähetyksen osalta: "Miksi sukupuoleen ja seksuaalisuuteen liittyvät asiat ovat konserv2851144- 2271140
- 721138
- 74968