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ä.
Aikojen vertailu Excelissä
4
556
Vastaukset
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
Vain vasemmistolaiset rakennemuutokset pelastavat Suomen
Kansaa on ankeutettu viimeiset 30+ vuotta porvarillisella minäminä-talouspolitiikalla, jossa tavalliselta kansalta on ot683584Persut huutaa taas: "kato! muslimi!"
Persut on lyhyessä ajassa ajaneet läpi kaksi työntekijöiden oikeuksien heikennystä, joita se on aiemmin vastustanut. Pe322969- 772656
- 282634
- 192365
- 522272
- 561911
- 581746
KL: Mari Hynynen avoimena - Jouni-rakkaan ja Joel-pojan välit ovat nämä!
Mari Hynynen (ent. Perankoski) on naimisissa Jouni Hynysen kanssa. Marilla on edellisestä liitosta yksi lapsi, Joel Vola111643- 141641