Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Visa skift funktion

Postades av 2014-03-04 22:12:21 - Joacim Kindvall, i forum microsoft office, Tråden har 2 Kommentarer och lästs av 2422 personer

Hej,
Jag håller på att göra en funtion på jobbet i exel 2010, där det skall komma upp vilket skift som har gjort arbetet beroende på vilket datum som står i en kolumn. Funka bra, men när det kommer till udda veckor, så byter den inte skiftgången. Ena veckan jobbar B-skift sent. Andra veckan jobbar B-skift tidigt. Hela tiden visar den den sena tiden. Hoppas någon kan rätta till felet som finns här nedan.

Function kollaskift(ByVal Value As Date)

    Dim result As String
    Dim d1 As Date
    Dim d2 As Long
    d2 = DateSerial(Year(d1 - Weekday(d1 - 1) + 4), 1, 3) 
    week = Int((d1 - d2 + Weekday(d2) + 5) / 7)
    
   
    hh = Hour(Value)
    mm = Minute(Value)
    dd = Weekday(Value, vbMonday)

    Select Case week
    Case Is = 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 37, 40, 42, 44, 46, 48, 50, 52 'Jämna veckor
        
        'Jämna veckor
        If hh >= 6 And hh < 14 Then
            result = "A"
        
        Else
        If hh >= 14 And hh < 23 Then
            result = "B"
        End If
        End If

     Case Is = 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53 'Udda veckor
    
        'Udda veckor
        If hh >= 6 And hh < 14 Then
            result = "B"
        
        Else
        If hh >= 14 And hh < 23 Then
            result = "A"
     End If
        End If
   End Select
   
       'Söndag Kväll
    If dd = 7 Then
        If hh >= 23 And mm >= 24 Then
            result = "Natt"
        End If
    End If

    
    'Måndag - Fredag
    If dd >= 1 And dd < 6 Then
    
        'Nattskift
        If hh >= 0 And hh < 6 Then
            result = "Natt"
        End If
        End If
        
        If hh >= 23 Then
            result = "Natt"
        End If
      
   
     If result = "" Then result = "Helg"
    kollaskift = result

End Function


Svara

Sv: Visa skift funktion

Postades av 2014-03-05 17:25:03 - Thommy Lantz

För det första tycker jag man skall använda ett
variabelnamn som säger vad det är man skickar in.
Value tror jag är ett reserverat ord.

Function kollaskift(ByVal InDate As Date)


För det andra ska du väl använda datumet du skickar in i funktionen.
Ser inte att du gör det.

Byt ut d1 mot InDate eller låt d1 få värdet InDate

    d1 = InDate 
    
    d2 = DateSerial(Year(d1 - Weekday(d1 - 1) + 4), 1, 3)
    week = Int((d1 - d2 + Weekday(d2) + 5) / 7)


Sen finns det en inbyggd funktion som tar fram veckonummer

    week = CInt(Format(InDate, "ww", 2))



Om du stegar koden så ser du att variabeln week alltid får värdet 52


Svara

Sv:Visa skift funktion

Postades av 2014-03-06 15:25:05 - Joacim Kindvall

Det löste sig.
Tack för svaret.


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 615
27 953
271 709
481
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies