Aineisto aikasarjamuotoon?

Tjswg

Osaisiko joku auttaa?

Lähtöaineisto on yli 10 000 havainnon lista päivystysvuoroja tekijöineen muodossa:
Henkilö. Alkupäivä. Loppupäivä. Kesto

eli esim: matti. 3.1.2017. 6.1.2017. 4
maija 9.1.2017. 10.1.2017. 2

Samalla henkilöllä on listalla useampia rivejä, jokaisella eri määrä ja vuorot ovat erimittaisia ja menevät henkilöiden välillä osin pällekkäin. Henkilöitä listassa on reilu 400.
Miten saisin tuon sellaiseen muotoon,että yhtenä sarakkeena on aika juoksevana päivämääränä koko vuosi 1.1._31.12, siis yksi rivi/päivä. Ja ihmiset olisivat jokainen oma sarakkeensa, jossa olisi arvo 1 niiden päivien kohdalla,jolloin on päivystänyt, ja muiden päivien kohdalla arvo 0. Eli:

Matti. Maija. Jne.
1.1.2017. 0. 0
2.1.2017. 0. 0
3.1.2017. 1. 0
4.1.2017. 1. 0
5.1.2017. 1. 0
6.1.2017. 1. 0
7.1.2017. 0. 0
8.1.2017. 0. 0
9.1.2017. 0. 1
10.1.2017. 0. 1
11.1.2017. 0. 0
jne.

Jollain kaavalla varmasti menee, mutta millä ???

1

179

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Kundepuu

      moduuliin...
      muuta taulukon nimet sopiviksi


      Option Explicit
      Dim solu As Range
      Dim Vika As Double
      Dim i As Long
      Dim j As Long
      Dim EiTupla As New Collection
      Dim Löydetty As Range
      Sub teetaulukko()
      On Error Resume Next
      Application.DisplayAlerts = False
      Sheets("Huuhaa").Delete

      PoistaTuplat

      Sheets.Add.Name = "Huuhaa"
      Cells(1, 1) = "PVM"
      Range("A2").FormulaR1C1 = "1/1/2017"
      Range("A2").AutoFill Destination:=Range("A2:A366"), Type:=xlFillDefault
      Range("A2:A366").NumberFormat = "d/m"
      For i = 1 To EiTupla.Count
      Worksheets("Huuhaa").Cells(1, i 1) = EiTupla(i)
      EtsiJaSiirrä2 EiTupla(i), i
      Next
      Worksheets("Huuhaa").Range("B2").Resize(365, EiTupla.Count 1).SpecialCells(xlCellTypeBlanks) = 0
      Application.DisplayAlerts = False
      End Sub

      Sub KirjoitaVuorot(Alku As Date, Loppu As Date, Siirtymä As Long)
      Dim AlkuPäivänro As Variant
      Dim LoppuPäivänro As Variant

      If Loppu - Alku <= 0 Then
      Exit Sub
      End If
      AlkuPäivänro = CDbl(Alku - DateValue("1.1") 1)
      LoppuPäivänro = CDbl(Loppu - DateValue("1.1") 1)
      For j = AlkuPäivänro To LoppuPäivänro
      Worksheets("Huuhaa").Range("A1").Offset(j, Siirtymä) = 1
      Next
      End Sub
      Function EtsiJaSiirrä2(Hakuehto As Variant, Sarake As Long) As Range

      Dim solu As Range
      Dim EkaOsoite As String
      Worksheets("Sheet1").Activate
      With Range("A:A")
      Set solu = .Find( _
      What:=Hakuehto, _
      LookIn:=xlValues, _
      LookAt:=xlWhole, _
      SearchOrder:=xlByRows, _
      SearchDirection:=xlNext, _
      MatchCase:=False, _
      SearchFormat:=False)
      If Not solu Is Nothing Then
      EkaOsoite = solu.Address
      Do
      KirjoitaVuorot solu.Offset(0, 1), solu.Offset(0, 2), Sarake
      Set solu = .FindNext(solu)
      Loop While Not solu Is Nothing And solu.Address <> EkaOsoite
      End If
      End With
      End Function
      Sub PoistaTuplat()
      On Error Resume Next
      Vika = Worksheets("Sheet1").Range("A65536").End(xlUp).Row
      For Each solu In Range("A1:A" & Vika)
      EiTupla.Add solu, CStr(solu)
      Next
      End Sub


      Keep EXCELing
      @Kunde

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

    Luetuimmat keskustelut

    1. Erään T miehen viimeinen aloitus tänne

      Moi Olen kirjoittanut täällä säännöllisesti yli 5 vuotta. Kaivannut kuten kuuluukiin, mutta myös unohdellut ja selvitel
      Ikävä
      35
      4015
    2. Sanna vaihteeksi Australian "60 minuuttia" ohjelmassa

      Kansanvälinen superstaramme esiintyi tällä kertaa toisella puolen maapalloa esitettävässä ohjelmassa. Kiinnostus on kova
      Maailman menoa
      138
      2555
    3. Yritykset verolle ja yritystuet 10 mrd. eur/v pois

      Kiristämistapauksissa yrityksille sanotaan hei hei. Suomi ei tarvitse yhteiskunnan rahoilla "yrittämistä". Yhteiskunta v
      Maailman menoa
      91
      2141
    4. Sanna Antikainen (ps) : Vornasen pyssy suututti demarit

      https://www.suomenuutiset.fi/sanna-antikaisen-kolumni-vornasen-pyssy-suututti-demarit-mutta-kuka-puhuu-totta/ Vornasen
      Maailman menoa
      22
      1674
    5. Yritän saada sinut pois mielestäni ja ajatuksistani nainen

      Turhaan. Mitä enemmän yritän, sitä enemmän haluan sinut ja sinua. Miten voitkaan olla niin ihana ja tuntua niin hyvältä.
      Ikävä
      78
      1656
    6. Nyt meni maku vas.liittoon, kun vaativat minimituntipalkkaa lakiin

      Sehän tarkoittaa samalla myös maksimituntipalkkaa, koska kun laki on kerran laadittu, niin sitä on vaikea muuttaa. Työma
      Maailman menoa
      64
      1405
    7. Riikka se runnoo työttömyyttä lisää

      Menkää töihin! "15–74-vuotiaiden työttömyysasteen trendiluku oli lokakuussa 10,3 prosenttia. Työttömiä oli yhteensä 276
      Maailman menoa
      10
      1404
    8. Mun on pakko uskaltaa

      Mikäköhän olisi pahin skenaario, jos vain laittaisin hänelle viestin, et haluan jutella meistä? Se, että hän vastaisi, e
      Ikävä
      79
      1321
    9. Miksi rakastuit ?

      Kyseiseen naiseen?
      Ikävä
      68
      1307
    10. Leikitään tavuleikkiä

      Millaiset nimitavut muodostuvat jos yhdistät oman etunimesi ensimmäisen tavun ja kaipaamasi ihmisen etunimen ensimmäisen
      Ikävä
      74
      1276
    Aihe