Miten saan poimittua seuraavasti excelistä tietoja:
esim soluissa a1-a50 on jokin numerosarja 123, 234,111 jne. sama sarja voi olla useammassa solussa a-sarakkeella.
Soluissa b1-b50 olisi sitten joku toinen tieto, esim. hinta jollekin työlle joka liittyy a-sarakkeessa olevaan numerosarjaan. Näitä eri tietoja voi olla useissakin eri sarakkeissa.
Seuraavaksi pitäisi saada poimittua a-sarakkeessa olevat numerosarjat esim. soluihin c51-c*** riippuen kuinka monta erilaista numerosarjaa löytyy.
Sitten pitäisi poimia soluihin d51-d*** vastaavilla riveillä olevat hintojen summat ja tarvittaessa e51-***, f51-*** jne.
esim. soluissa a1, a15 ja a20 on numerosarja 123. Sitten soluissa b1, b15 ja b20 on joku kustannus, esim 10, 20 ja 30.
Nyt pitäisi sitten poimia tuo numerosarja 123 soluun c51 ja soluun d51 10 20 30 eli 60.
Ja solusta c51 alaspäin kaikki erilaiset numerosarjat tarvittava määrä
Aika vaikea selittää mitä haluan tässä...
esim soluissa a1-a50 on jokin numerosarja 123, 234,111 jne. sama sarja voi olla useammassa solussa a-sarakkeella.
Soluissa b1-b50 olisi sitten joku toinen tieto, esim. hinta jollekin työlle joka liittyy a-sarakkeessa olevaan numerosarjaan. Näitä eri tietoja voi olla useissakin eri sarakkeissa.
Seuraavaksi pitäisi saada poimittua a-sarakkeessa olevat numerosarjat esim. soluihin c51-c*** riippuen kuinka monta erilaista numerosarjaa löytyy.
Sitten pitäisi poimia soluihin d51-d*** vastaavilla riveillä olevat hintojen summat ja tarvittaessa e51-***, f51-*** jne.
esim. soluissa a1, a15 ja a20 on numerosarja 123. Sitten soluissa b1, b15 ja b20 on joku kustannus, esim 10, 20 ja 30.
Nyt pitäisi sitten poimia tuo numerosarja 123 soluun c51 ja soluun d51 10 20 30 eli 60.
Ja solusta c51 alaspäin kaikki erilaiset numerosarjat tarvittava määrä
Aika vaikea selittää mitä haluan tässä...
Vastaukset 5
Vanhimmat
Mitähän se tarkoittaa, että sivun loppuun tulostuu rivejä?
Joko olet määritellyt reunaviivoja soluihin ja rivit ovat nuo näkyvät reunaviivat.
Toinen mahdollisuus on, että excelissäsi on sivun asetuksissa viimeisellä "Taulukko"-välilehdellä määritelty oletusruudukon tulostuminen. Tämä on valintaruutu "Ruudukko".
Näiden lisäksi on taulukossa vielä jotain sisältöä toivottujen solujen jälkeen. Myös välilyönti on sisältöä. Jos olet "tyhjennellyt" soluja kirjoittamalla niihin välilyöntejä, kuvaamasi ongelmat syntyvät.
Toivottavasti tästä on jotain apua.
Pertti
Sori tunari. Tuli itsekin tunaroitua ja vastasin väärään viestiin edellä.
Sinun ongelmasi ei ihan pikku selittämisellä aukene. Itse kokeilisin käyttää tietokantafunktioita, joissa on tuo avaintiedon mukaan summaaminen sisäänrakennettuna.
Pertti
Valikosta Tiedot/Pivot-taulukon ... kun hieman kokeilet niin keksit varmaan että pivot hoitaa juuri haluamasi asiat.
Joko onnistui?
Muokkaile mieleiseksi
Dim Vika1 As Integer
Dim Vika2 As Integer
Dim Ainutkertaiset As Variant
Sub Testi()
Range("AA:AA") = ""
Vika1 = Range("A65536").End(xlUp).Row
Range("A1:A" & Vika1).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("AA1"), Unique:=True
Vika2 = Range("AA65536").End(xlUp).Row
For Each solu In Range("AA1:AA" & Vika2)
EtsiKaikki solu.Value
Next
Range("AA1:AA" & Vika2) = ""
End Sub
Sub EtsiKaikki(Haettava As String)
Dim Hakualue As Range
Dim Eka As String
Dim Seuraava As String
Range("C51:AA10000") = ""
Range("A1").Select
With Range("A:A")
Set Hakualue = .Find(What:=Haettava, After:=ActiveCell, LookIn:=xlValues, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False)
If Not Hakualue Is Nothing Then
Eka = Hakualue.Address
Range("C26").Select
If Not Range("C26") = "" Then
Do Until ActiveCell = ""
ActiveCell.Offset(1, 0).Select
Loop
Else
Range("C26").Select
End If
ActiveCell = Haettava
ActiveCell.Offset(0, 1) = Range(Eka).Offset(0, 1)
ActiveCell.Offset(0, 2) = Range(Eka).Offset(0, 2)
ActiveCell.Offset(0, 3) = Range(Eka).Offset(0, 3)
Set Hakualue = .FindNext(Hakualue)
Seuraava = Hakualue.Address
Do While Not Hakualue Is Nothing And Seuraava Eka
Range("C65536").End(xlUp).Select
ActiveCell.Offset(0, 1) = ActiveCell.Offset(0, 1) Range(Seuraava).Offset(0, 1)
ActiveCell.Offset(0, 2) = ActiveCell.Offset(0, 2) Range(Seuraava).Offset(0, 2)
ActiveCell.Offset(0, 3) = ActiveCell.Offset(0, 3) Range(Seuraava).Offset(0, 3)
Set Hakualue = .FindNext(Hakualue)
Seuraava = Hakualue.Address
Loop
Else
End If
End With
End Sub
Pivotilla tuo tosiaan menee ilman sen kummempaa. Tosin, kun A-sarakkeessa on lukusarjoja, ne on varmaankin muotoiltava tekstiksi. Valitse sarake, anna komento Muotoile-Solut-Lukumuotoilu-Teksti.
Työläämpi ja varmempi toiminnaltaan on aloittaa joka solu heittomerkillä.
Tämä vain, ellei Excel meinaa ymmärtää tehdä rivi/sarakeotsikoita niistä numerosarjoista jotka se tulkitsee luvuiksi.