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

184

    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. Suomen kansa haluaa Antti Lindtmanista pääministerin

      Lindtman on miltei tuplasti suositumpi kuin etunimikaimansa Kaikkonen. Näin kertoo porvarimedian teettämä kysely. http
      Maailman menoa
      245
      4402
    2. Vain 21% kannattaa Lindtmania pääministeriksi

      se on selvästi vähemmän kuin puolueen kannatus, mites nyt noin?
      Maailman menoa
      123
      2859
    3. Miten löydän sinut

      Ja saan sanottua kaiken mitä haluan sinulle kertoa? Ja kuinka kuuntelisit minua sen hetken? Kuinka voin ilmaista sen mit
      Ikävä
      41
      2612
    4. Yöllinen autolla kaahari Heinolan seudulla

      Asukkaita häiriköivän nuoren herran autokaahaus keskustelu poistettu, onko jokin hyvävelijärjestelmä käytössä ?
      Heinola
      86
      1585
    5. Vaikea tilanne

      Hieman kolkuttaa omatuntoa, kun on osoittanut kiinnostusta väärää naista kohtaan. En ymmärrä miten toinen on voinut te
      Ikävä
      116
      1508
    6. Milloin kaivatullasi

      .. on nimipäivä?
      Ikävä
      49
      1229
    7. Kehtaisitko näyttäytyä

      kaivattusi seurassa?
      Ikävä
      85
      1164
    8. Julkinen sektori on elänyt aivan liian leveästi yli varojensa!

      Viimeisen 15 vuoden aikana julkisen puolen palkat ovat nousseet n. 40%, kun taas yksitysellä sektorilla vain n. 20%. En
      Maailman menoa
      192
      1030
    9. Missä kunnassa kaivattusi asuu

      Kuinka tarkkaa uskalla sanoa?
      Ikävä
      45
      996
    10. Ne viimeiset kerrat

      Kun katsoit minua niin lämpimästi. En unohda sitä ❤️
      Ikävä
      59
      993
    Aihe