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

543

    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. Purra sössi kaiken 2 vuodessa, itkee nyt Marinin perään

      Nyt on taas sama vanha itkuvirsi, kun ei omat taidot riittänee. Kaikki on taas muiden syytä. No miten sen "Tunnin juna"
      Maailman menoa
      149
      9747
    2. Ikuiset kaipaajat

      Miksette vaan mene sen kaipauksen kohteen luokse ja puhu sille suoraan? Mitä järkeä on kaipailla jotain puolituttua vuo
      Ikävä
      169
      6149
    3. Eli persujen rääkyminen Marinin hallituksen velanotosta oli sitä itseään

      "Valtiovarainministeriön mukaan Marinin hallitus lisäsi valtion pysyviä menoja 3 miljardia eikä 11 miljardia euroa." El
      Maailman menoa
      33
      5497
    4. Nyt se on selvitetty: Sanna Marinin hallitus lisäsi menoja 41 miljardilla

      ”vasemmistohallitus oli katastrofaalisen huono”, sanoo kokoomus. Sanna Marinin (sd.) hallituksen tekemät menolisäykset
      Maailman menoa
      172
      5451
    5. MTV3 - Auerin poika todistaa videolla, miten Anneli pahoinpiteli lapsia!

      Kello 10.04 – Ainakin kerran viikossa se löi. Löi muitakin sisaruksia, mutta ei isosiskoa. Nuorinta siskoa en ole nähny
      Henkirikokset
      6
      4482
    6. Orpon hallitus runnoi Tunnin junan ilman tarvetta

      Näinkö valtiontaloutta hoidetaan? Siis asiantuntijoidenkin aikoja sitten kannattamattomaksi laskema Tunnin juna tehdään
      Maailman menoa
      59
      4453
    7. Riikka ottaa miljardi euroa EU:n yhteisvelkaa Suomelle

      Niin kääntyi irvipersun takki taas, vaikka vaalilupauksissa oli ettei yhteisvelkaa Suomi enää koskaan ota. No nyt otti m
      Maailman menoa
      88
      3541
    8. Lindtman ylivoimainen suosikki pääministeriksi

      Lindtmania kannattaa pääministeriksi peräti 50 prosenttia useampi kuin toiseksi suosituinta Kaikkosta. https://www.ilta
      Maailman menoa
      78
      3499
    9. En tiedä ymmärrätkö

      Kuinka paljon merkitset mulle. Näet minut minuna etkä silti käännä selkääsi. Tökit jatkuvasti kepillä jäätä ja menit ehk
      Ikävä
      10
      2991
    10. Sanna Marin - Maailman paras talousasiantuntija?

      PersKeKoa pukkaa? https://www.hs.fi/politiikka/art-2000011636623.html
      Maailman menoa
      128
      2950
    Aihe