Aikojen vertailu Excelissä

T:OMH

Moi
Seuraavan lainen ongelma nousi esille raportti dataa käsitellessäni...
Miten saisi laskettua päivämäärä erotuksen ja erojen kappalemäärän.
Pieni esimerkki joka toivottavasti selkiyttää enemmän.
Sarakkeessa G on pyydetty aloitus aika ja sarakkeessa J on toteutunut aloitus aika [ J-G = ohi menneet päivät] . Erotuksena pitäisi olla kpl ohimenneetpäivät ja ettei homma olisi liian helppo pitäisi vielä saada nuo työpäivät listattua "alueittain" ero : Mennyt ohi -1päivää ; 1-2 päivää ; 2-3 Päivää ja 4-> päivää ohi menneet...
Ja taulukossa on rivejä "vasta" reilu 32000kpl joten en viitsisi kauhean montaa copy / paste juttua tehdä joka riville... vaan hakusessa olisi VBA scripti/Makro tms hässäkkä.

4

557

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • tarkoititko todella , että ohi 1pv , 1-2 pv, 2-3 pv ja yli 4 pv?
      vaiko 1,2,3 yli 4 pv?

      no mai pen rai tossa sulle molemmat versiot
      eli tulostukset soluihin N1:N4

      moduuliin...
      Sub Aikaerot()
      Dim vika As Long
      Dim solu As Range
      Dim Aikaero As Long
      On Error Resume Next
      Range("N1:N4") = ""
      vika = Range("G65536").End(xlUp).Row
      For Each solu In Range("G1:G" & vika)
      Aikaero = CDbl(solu.Offset(0, 3)) - CDbl(solu)
      Select Case Aikaero
      Case 1
      Range("N1") = Range("N1") 1
      Case 2
      Range("N2") = Range("N2") 1
      Case 3
      Range("N3") = Range("N3") 1
      Case Is > 3
      Range("N4") = Range("N4") 1
      End Select
      Next
      End Sub

      Sub Aikaerot2()
      Dim vika As Long
      Dim solu As Range
      Dim Aikaero As Long
      On Error Resume Next
      Range("N1:N4") = ""
      vika = Range("G65536").End(xlUp).Row
      For Each solu In Range("G1:G" & vika)
      Aikaero = CDbl(solu.Offset(0, 3)) - CDbl(solu)
      Select Case Aikaero
      Case 1
      Range("N1") = Range("N1") 1
      Case 2
      Range("N1") = Range("N1") 1
      Range("N2") = Range("N2") 1
      Case 3
      Range("N2") = Range("N2") 1
      Range("N3") = Range("N3") 1
      Case Is > 3
      Range("N4") = Range("N4") 1
      End Select
      Next
      End Sub

      Keep EXCELing
      @Kunde

    • T:OMH

      Kiitos. Nopeasta vastauksesta.

      Ja ruokahaluhan kasvaa syödessä... Jos haluan lukea usealta välilehdeltä (Sheet 1, Sheet 2...Sheet n) ja palauttaa tuloksen vaikka Sheet OHI välilehdelle...

      Silloin lienee ainoa vaihtoehto lukea ensin välilehtien nimet ja sijoitta ne "yksitellen tuon rivin Vika=Range arvoksi?

    • toivottavasti ei tuu ähkyolo ;-)

      Sub Aikaerot()
      Dim vika As Long
      Dim solu As Range
      Dim Aikaero As Long
      Dim taulukot
      Dim i As Long
      On Error Resume Next
      Sheets("Ohi").Range("N1:N4") = ""
      taulukot = Array("Taul1", "Taul2", "Taul3")
      For i = LBound(taulukot) To UBound(taulukot)
      vika = Sheets(taulukot(i)).Range("G65536").End(xlUp).Row
      For Each solu In Sheets(taulukot(i)).Range("G1:G" & vika)
      Aikaero = CDbl(solu.Offset(0, 3)) - CDbl(solu)
      Select Case Aikaero
      Case 1
      Range("N1") = Sheets("Ohi").Range("N1") 1
      Case 2
      Range("N2") = Sheets("Ohi").Range("N2") 1
      Case 3
      Range("N3") = Sheets("Ohi").Range("N3") 1
      Case Is > 3
      Range("N4") = Sheets("Ohi").Range("N4") 1
      End Select
      Next
      Next
      End Sub
      Keep EXCELing
      @Kunde

      • T:OMH

        Kiitos Paljon,

        Nyt vain odotetaan laskenta tulosta....


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

    Luetuimmat keskustelut

    1. Tiedätkö mihin

      Ominaisuuksiin rakastuin sinussa?
      Ikävä
      74
      4217
    2. Purra on kantanut vastuuta täyden kympin arvoisesti

      Luottoluokituksen lasku, ennätysvelat ja ennätystyöttömyys siitä muutamana esimerkkinä. Jatkakoon hän hyvin aloittamaans
      Maailman menoa
      85
      3926
    3. Surullista

      Että menetit sen naisen , tosi surullista ja vielä oman tyhmyyden takia ,ymmärrän että se on masentavaa
      Ikävä
      57
      2458
    4. Muuttunut käytös

      Onko kaivattusi käytös muuttunut? Tiedätkö mistä se johtuu? Haluatko kertoa, mitä tapahtui?
      Ikävä
      65
      2302
    5. Väkeä oli liikkeellä

      Nyt leijutaan pilvissä. Kun eläinpuistossa oli porukkaa 😆😆 Olihan siellä kun ilmaiseksi pääsivät. Eiköhän se juuri sik
      Ähtäri
      40
      2013
    6. Oliko kiihkeä

      ensimmäinen yö?
      Ikävä
      49
      1889
    7. 108
      1793
    8. Miltä meidän

      Riidat näyttäisi ja mistä niitä voisi tulla?
      Ikävä
      56
      1662
    9. Kummallista

      Oletteko koskaan ihastuneet ihmiseen, joka ei ulkonäöltään vastaa ollenkaan ihannettanne?
      Sinkut
      55
      1653
    10. Ikävä Jii.

      Toivotko vielä näkemistä?
      Ikävä
      61
      1531
    Aihe