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

611

    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. Tunnustusten lauantai

      Mitä haluat sanoa kaivatullesi?
      Ikävä
      257
      3389
    2. Kenellä oli ryppyinen paita, josta Halla-aho mielensä pahoitti?

      Ei ollut Keskisarja, jonka paita vain repsotti housujen päällä puolittain. Muistatteko tapausta?
      Maailman menoa
      36
      2972
    3. Miksi Halla-aho on niin hyvin menestynyt - mutta punavihreä ei?

      Hyvin näkee kuinka punavihreää ottaa pahasti päähän kun Virta on taas töppäillyt pahasti. Ja kun punavihreä ei pärjää, n
      Maailman menoa
      34
      2208
    4. Ruoan arvonlisävero menee käytännössä tukijussille

      Ilman juomia elintarvikkeiden myynti vuonna 2025 oli reilut 15 miljardia euroa. Tuolla tasolla arvonlisävero pyörii pari
      Maailman menoa
      42
      2122
    5. Vihreät REPEÄMÄSSÄ oijoijoi....Virran sekoilut on liikaa

      Jo ennestään vihreiden kannatus on suossa vaikka puolue istuu oppositiossa, nyt tuli Virran temppu kun häipyi tuosta vaa
      Maailman menoa
      78
      1994
    6. Sofia Virta SUURI POLIITIKKO

      Osallistumalla Erikoisjoukkoihin nostaa Vihreät kauaksi ohi perussuomalaisista, joka on muutenkin hajoamassa omaan mahdo
      Maailman menoa
      84
      1766
    7. Ruotsissa uusi vakava ongelma: Vanhusten seksuaalinen hyväksikäyttö

      palvelutaloissa ja kotihoidossa. Tämäkin on ihan puhtaasti väärän maahanmuuton vaikutusta, sillä tekijät ovat kaikki keh
      Maailman menoa
      49
      1687
    8. Mitä ikävöit eniten ikäväsi kohteesta?

      Rahaa, turvallisuutta, kauniita katseita,seksiä, läheisyyttä vai jotain muuta?
      Ikävä
      122
      1547
    9. Työeläkkeiden maksaminen lopetettava ASAP.

      "Vanhimmat sukupolvet ovat saaneet vastinetta eläke­maksuilleen monin­kertaisesti nykyisiin ja tuleviin sukupolviin verr
      Maailman menoa
      56
      1444
    10. Poliisi tutkii keskiviikkoiltana Kiuruveden keskustassa tapahtunutta väkivallantekoa.

      Itä-Suomen poliisi tutkii Kiuruveden keskustassa keskiviikkoiltana tapahtunutta epäiltyä väkivallantekoa. Tapaus on herä
      Kiuruvesi
      15
      1350
    Aihe