Dansk Regneark Forum
  Hjælp Hjælp  Søg i forum   Arrangementer   Opret ny bruger Opret ny bruger  Log ind Log ind


Emne lukketbetalig af feriepenge

 Besvar Besvar Side  12>
Forfatter
Henrik Nielsen Se dropdown
Bronze bruger
Bronze bruger


Medlem: 07.Mar.2011
Land: danmark
Status: Offline
Point: 55
Direkte link til dette indlæg Emne: betalig af feriepenge
    Sendt: 23.Sep.2016 kl. 07:48
jeg roder lidt med komme-gå registrering,

kan der laves så dato og tid indsættes ved klik i cellen.

venlig hilsen
Henrik Nielsen
Til top



Til top
Bjarnehansen Se dropdown
Platin bruger
Platin bruger
Avatar

Medlem: 20.Nov.2011
Land: DK
Status: Offline
Point: 5475
Direkte link til dette indlæg Sendt: 23.Sep.2016 kl. 10:04
Så tror jeg vi skal over i noget VBA...
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Med venlig hilsen - Bjarne Hansen - Microsoft 365 DK
Til top
froksen Se dropdown
Sølv bruger
Sølv bruger


Medlem: 21.Maj.2011
Land: DK
Status: Offline
Point: 196
Direkte link til dette indlæg Sendt: 29.Sep.2016 kl. 19:16
Hej

Lidt inddirekte svar. Måske kan du bruge noget herfra: https://www.excel-regneark.dk/?pageIDX=188
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 30.Sep.2016 kl. 09:18
Hej Henrik.

Nedenstående kode indsættes i VBA i den arkfane, koden skal virke på - F.eks. Ark1.
Du skal dobbelt-klikke i cellen.
Dobbelt-klik vil indsætte dags dato.
Private Sub WorkSheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If IsEmpty(Target) Then
        Cancel = True
        Target = Date
    End If
End Sub
 
Man kan finde mange koder på Google.
Koden fundet HER

Ib
Excel 2010 Dk og 2019 Dk på samme computer.
Bruger dog stadig mest 2010..
Men sådan er der jo så majet :o)
Til top
Henrik Nielsen Se dropdown
Bronze bruger
Bronze bruger


Medlem: 07.Mar.2011
Land: danmark
Status: Offline
Point: 55
Direkte link til dette indlæg Sendt: 30.Sep.2016 kl. 09:35
Hej IB

har du en vejledning til at indsætte i VBA (er ikke så stærk i den del)
har prøvet men det fungerer ikke.

venlig hilsen
Henrik Nielsen
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 30.Sep.2016 kl. 09:37
Denne indsætter både Dato og Tidspunkt, når der dobbelt-klikkes.

Hvis du ikke vil have sekunderne med, kan du bare fjerne :ss i koden.

Private Sub WorkSheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If IsEmpty(Target) Then
        Cancel = True
        Target = Date
        Target = Format(DateTime.Now, "dd-mm-yyyy   hh:mm:ss")
    End If
End Sub


Ib
Excel 2010 Dk og 2019 Dk på samme computer.
Bruger dog stadig mest 2010..
Men sådan er der jo så majet :o)
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 30.Sep.2016 kl. 09:47

Mærk hele koden i forum op, ved at trække musen hen over hele teksten, mens venstre musetast holdes nede.
Hold Ctrl nede og tast C = Kopiere den opmærkede tekst.

Åben VBA delen
- Åben dit regneark.
- Højreklik på den fane, koden skal køre på og klik på Vis programkode.
- Dette åbner VBA delen.

- Sæt musen ind den store tomme rude.
- Hold Ctrl nede og tast V = Indsætter den kopierede tekst.
- Luk VBA delen på lukke krydset.

Dobbelt-klik i en af cellerne på fanen

Her er koden igen med Dato og tidspunkt.
Men husk, det er computerens dato og tid der stemples - Hvis det ikke passer, vil der stemples en forkert dato og tid.
Private Sub WorkSheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If IsEmpty(Target) Then
        Cancel = True
        Target = Date
        Target = Format(DateTime.Now, "dd-mm-yyyy   hh:mm:ss")
    End If
End Sub



Excel 2010 Dk og 2019 Dk på samme computer.
Bruger dog stadig mest 2010..
Men sådan er der jo så majet :o)
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 30.Sep.2016 kl. 10:06
Hvis du vil have måneden vist med bogstaver i stedet for tal, kan det sagtens ændres i kode.
Det er bare denne lille del af koden, der skal ændres "d. mmmm yyyy.

dd = Datoen vises med to cifre - F.eks. 03
d = Datoen vises med et cifre - F.eks. 3
d. = Punktum efter datoen = F.eks. 3.

mm = Måned vises med to cifre = F.eks. 09
mmm = Måned vises i kort format = F.eks. sep
mmmm = Måned vises i lang format = F.eks. september

yy = Årstal i kort format = F.eks. 16
yyyy = Årstal i lang format = F.eks. 2016

Du kan sætte bindestreg ind som separator eller bare et mellemrum.
Det kan laves, som man vil have det til at se ud.

Dato med punktum og lang måneds- og årtalsformat.
Private Sub WorkSheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If IsEmpty(Target) Then
        Cancel = True
        Target = Date
        Target = Format(DateTime.Now, "d. mmmm yyyy   hh:mm:ss")
    End If
End Sub


Excel 2010 Dk og 2019 Dk på samme computer.
Bruger dog stadig mest 2010..
Men sådan er der jo så majet :o)
Til top
Henrik Nielsen Se dropdown
Bronze bruger
Bronze bruger


Medlem: 07.Mar.2011
Land: danmark
Status: Offline
Point: 55
Direkte link til dette indlæg Sendt: 30.Sep.2016 kl. 10:17
Hej igen

der er noget af koden som bliver rød, når den indsættes, skal den det,
det virker ikke, måske er det bare en lille detalje.

jeg bruger excel 2016

henrik
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 30.Sep.2016 kl. 10:23
Har du mærket hele koden op - Kopieret den - Og indsat den i VBA, på den fane, koden skal køre på ?

- Koden skal starte med Private Sub og slutte med End Sub.
- Vær sikker på koden er indsat i VBA på den rigtige fane - F.eks. Ark1

Kopier hele den blå tekst og indsæt den i VBA, som jeg bekrev oven over.

Private Sub WorkSheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If IsEmpty(Target) Then
        Cancel = True
        Target = Date
        Target = Format(DateTime.Now, "d. mmmm yyyy   hh:mm:ss")
    End If
End Sub

Excel 2010 Dk og 2019 Dk på samme computer.
Bruger dog stadig mest 2010..
Men sådan er der jo så majet :o)
Til top
Henrik Nielsen Se dropdown
Bronze bruger
Bronze bruger


Medlem: 07.Mar.2011
Land: danmark
Status: Offline
Point: 55
Direkte link til dette indlæg Sendt: 30.Sep.2016 kl. 10:24
Hej igen

jeg har flyttet på koden så linjerne står under hinanden, så nu virker det. tusind tak

kan det så også lade sig gøre at cellen låses samtidig med, så der ikke efterfølgende kan ændres på tidspunktet.

Henrik
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 30.Sep.2016 kl. 11:08
Mht. at linjerne står lige under hinanden, har ingen betydning overhovedet.
Man forskyder kun linjerne for bedre at have overblik over koden og hvordan den hænger sammen.

Man må bare ikke ændre på linjerne, ved foreksempel at skrive hele koden i en lang linje.
Linjerne skal bare være indelt som de er.

Ja, det kan nok lade sig gøre at låse en celle, når den forlades.
Jeg ved bare ikke lige hvordan.
Excel 2010 Dk og 2019 Dk på samme computer.
Bruger dog stadig mest 2010..
Men sådan er der jo så majet :o)
Til top
excelent Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 12.Apr.2011
Land: DK
Status: Offline
Point: 2171
Direkte link til dette indlæg Sendt: 01.Okt.2016 kl. 09:47
Private Sub WorkSheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range("G1:G20")) Is Nothing Then Exit Sub
If Not IsEmpty(Target) Then Exit Sub
Target = Date
Target.Value = Format(DateTime.Now, "d. mmmm yyyy   hh:mm:ss")
End Sub

Ovenstående kode tillader dobbeltklik i G1:G20 hvis tom celle
Ret til aktuel

Gnaske hvis jeg indsætter din kode i min Excel 2016 DK
markeres kode linjerne med rød, dog ikke start og end sub
Jeg går ud fra du laver indrykninger med Tabulator tasten ?
Ved ikke hvorfor disse fortolkes forkert i xl2016

Måske Allan har de vise sten :-)
Jeg anvender Excel 2016 DK. Hvad anvender DU ? HUSK TILBAGEMELDING !!!
Til top
excelent Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 12.Apr.2011
Land: DK
Status: Offline
Point: 2171
Direkte link til dette indlæg Sendt: 01.Okt.2016 kl. 10:27
Ovenstående forhindrer at du dobbeltklikker i celle som ikke er tom
Indsæt følgende kode i samme modul som får markør til at hoppe til A1
hvis celle ikke er tom

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("G1:G20")) Is Nothing Then Exit Sub
If Target <> "" Then Range("A1").Select
End Sub
Jeg anvender Excel 2016 DK. Hvad anvender DU ? HUSK TILBAGEMELDING !!!
Til top
excelent Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 12.Apr.2011
Land: DK
Status: Offline
Point: 2171
Direkte link til dette indlæg Sendt: 01.Okt.2016 kl. 10:29
Ret "G1:G20" til aktuel og evt også A1 hvis markør skal hoppe andetsteds
Jeg anvender Excel 2016 DK. Hvad anvender DU ? HUSK TILBAGEMELDING !!!
Til top
Henrik Nielsen Se dropdown
Bronze bruger
Bronze bruger


Medlem: 07.Mar.2011
Land: danmark
Status: Offline
Point: 55
Direkte link til dette indlæg Sendt: 01.Okt.2016 kl. 11:13
fantastisk forum, det jeg også søger er når dato og tid er indsat, må der ikke efterfølgende kunne skrives/rettes i cellen

venlig hilsen
henrik Nielsen
Til top
Henrik Nielsen Se dropdown
Bronze bruger
Bronze bruger


Medlem: 07.Mar.2011
Land: danmark
Status: Offline
Point: 55
Direkte link til dette indlæg Sendt: 01.Okt.2016 kl. 11:45
det hele virker nu, kan dog ikke trække starttid fra sluttid længere,
har prøvet forskellige formateringer, har fjernet sekunder da det ikke er
nødvendigt.

venlig hilsen
henrik nielsen
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 02.Okt.2016 kl. 17:35
Excelent

Jeg fandt koden på nettet HER, hvor det ikke er rykket ind og har, som du ganske rigtigt skriver, lavet indrykning med TAB.

Måske virker det i xl2016, hvis man i stedet bruger indryknings værktøjet i VBA, men det kan jeg af gode grunde ikke teste Ouch

Ib
Excel 2010 Dk og 2019 Dk på samme computer.
Bruger dog stadig mest 2010..
Men sådan er der jo så majet :o)
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 02.Okt.2016 kl. 18:44
Henrik

Jeg har rodet en del med tidspunkter, dog uden at have fundet de helt vise sten.

Men måske virker dette.
- Højreklik på alle de celler, hvor Facit af din beregning mellem de to datoer og tidspunkter står i.
- Vælg Formater celler i dropdown popup'en.
- Åben fanen Tal i popup vinduet.
- Vælg Brugerdefineret nederst.
- Her har du nu mulighed for at vælge en masse formater eller selv skrive dem.

Prøv formatet [t]:mm - Med firkant parantes omkring t
Det vil beregne det samlede antal timer der er gået mellem de to datoer og klokkeslæt.
F.eks. fra 1. jan 2016 kl. 08:00 til 2. jan 2016 kl. 09:00 = 25:00 = (25 timer)

Hvis du i stedet prøver tt:mm vil det kun vise 1 time, da det er forskellen mellem kl. 08:00 og 09:00, selvom de ligger på forskellige datoer.

Prøv dig frem Wink


Excel 2010 Dk og 2019 Dk på samme computer.
Bruger dog stadig mest 2010..
Men sådan er der jo så majet :o)
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 02.Okt.2016 kl. 19:43
Henrik

Jeg har prøvet forskellige ting, der låser cellen, når der dobbeltklikkes på den og tror jeg har fundet en måde.

Denne kode forudsætter dog at hele arket er beskyttet, men de celler der må skrives i, er ubeskyttede.
Når der dobbeltklikkes på en celle, vil den så også blive beskyttet.

Hvis du ikke ved, hvordan du beskytter et ark og lader celle være ubeskyttede, må du skrive tilbage.

Hvis du bruger et password, når du beskytter hele arket, ser koden lidt anderledes ud, forstået på den måde, at så skal password indskrives i koden.
Her kommer begge koder.

Kode uden Password, når arket beskyttes


Private Sub WorkSheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'---------------------------------------------------------
' Hvis cellen ikke er tom, hopper den til cellen til højre
'---------------------------------------------------------
If Not IsEmpty(Target) Then
ActiveCell.Offset(0, 1).Select ' Hvis den skal hoppe ned bruges (1, 0)
End If

'-----------------------------------------------------
' Hvis cellen er tom, indsætter den dato og klokkeslæt
'-----------------------------------------------------
If IsEmpty(Target) Then
Cancel = True
Target = Date
Target = Format(DateTime.Now, "d. mmmm yyyy   hh:mm")

'-----------------------------------------------------------------
' Låser først hele arket op - Låser cellen - Låser hele arket igen
'-----------------------------------------------------------------
ActiveSheet.Unprotect
Target.Locked = True
ActiveSheet.Protect
End If
End Sub

---------------------------------------------------------------------------------------------------------------------------------

Kode med Password, når arket beskyttes
Password du beskytter hele arket med, skal være fuldstændig identisk med password i koden.
Password i koden indsættes de to steder i koden med rødt.


Private Sub WorkSheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'---------------------------------------------------------
' Hvis cellen ikke er tom, hopper den til cellen til højre
'---------------------------------------------------------
If Not IsEmpty(Target) Then
ActiveCell.Offset(0, 1).Select ' Koden der hopper til højre - Hvis den skal hoppe ned bruges (1, 0)
End If

'-----------------------------------------------------
' Hvis cellen er tom, indsætter den dato og klokkeslæt
'-----------------------------------------------------
If IsEmpty(Target) Then
Cancel = True
Target = Date
Target = Format(DateTime.Now, "d. mmmm yyyy   hh:mm")

'-----------------------------------------------------------------
' Låser først hele arket op - Låser cellen - Låser hele arket igen
'-----------------------------------------------------------------
ActiveSheet.Unprotect Password:="HER SKRIVES PASSWORD"
Target.Locked = True
ActiveSheet.Protect Password:="HER SKRIVES PASSWORD"
End If
End Sub

Se om det virker Wink

Ib

Excel 2010 Dk og 2019 Dk på samme computer.
Bruger dog stadig mest 2010..
Men sådan er der jo så majet :o)
Til top
 Besvar Besvar Side  12>

Skift forum Forum tilladelser Se dropdown

© 2010 - 2024 Dansk Regneark Forum - en del af Excel-regneark.dk