Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
OG når jeg taster kl. 0900 ind så skriver den kun 900. kan jeg vælge format 00:00 og så bare skrive 0900 og den vil selv sætte : ind det rigtige sted, eller skal jeg taste kolon?
Du mener jeg ikke slipper for at taste kolon? jeg har formateret til klokkeslet.. Ok troede blot den kunne gætte at når jeg skrev 1000, så skulle den selv sætte kolon ind imellem, når den var klokkeslet formateret.
Jeg bruger en VBA-kode der laver en almindelig 3- eller 4 cifret indtastning om til tidsformat. Den kræver blot at der er defineret et navngivet område og at man IKKE bruger skilletegn (kolon) i indtastningen. Interesseret?
"ved bare ikke noget om VBA...." - Det var jo ikke så godt men vi må jo se på det.
Koden du ser nederst i denne kommentar kræver at de celler du indtaster tider i (i dit eksempel A1 og B1) navngives til "Tid" samt at de har formatet [t]:mm. Du formaterer dem ved at markere cellerne og trykke på menuen [Format], vælge [Celler], fanen [Tal], punktet [Brugerdefineret]. Her indsætter du "[t]:mm" (uden anførelsestegn) i rammen nedenunder "Type:". Det valgte område skulle stadig være markeret. Lige oven over kolonnetitlerne (A1... osv.) er der en hvid ramme hvor der står A1. Den klikker du i og skriver "Tid" (uden anførelsestegn). Det giver det markerede område navnet "Tid". Højreklik derefter på arkets fane nederst i Excel, hvis du ikke har gjort noget for at ændre fanens navn er det "Ark1". Vælg punktet [Vis programkode]. VBA Editoren åbner, i venstre side skulle du en skakt der indeholder navnene på evt. indlæste tilføjelser samt navnet på din regnearks fil. Hvis ikke du ser den, så klik på menuen [View], punktet [Project explorer]. Klik på punktet "Ark1" i skakten. Evt. skal du først udvide ved at trykke på plustegnet, så du ser "Ark1". I højre side er der et stort område med 2 rammer over hvor der står "(General)" og "(Declarations)". I det store område skal du kopiere nedenstående kode ind. De 3 første linjer er kommentarer.
Herunder er koden:
' Denne Subrutine ændrer en alm. 3 eller 4 cifret indtastning til tidsformat ' F.eks. 1430 til 14:30 eller 700 til 7:00 ' Cellerne i området (Tid) skal dog være formateret til tidsformat [t]:mm Private Sub Worksheet_Change(ByVal Target As Excel.Range) On Error GoTo Slut Application.EnableEvents = False If Not Intersect(Target, Range("Tid")) Is Nothing Then If IsNumeric(Target.Value) Then If Target.Value Mod 1 = 0 And Target.Value > 0 Then If Len(Target.Value) >= 2 And Len(Target.Value) <= 4 Then iTime = Left(Format(Target, "0000"), 2) iMinut = Right(Format(Target, "0000"), 2) If iTime < 24 And iMinut <= 59 Then Target = iTime / 24 + iMinut / 24 / 60 Else Target = "" End If Target.NumberFormat = "[t]:mm" Else Target.Value = "" End If Else Target.Value = "" End If Else Target.Value = "" End If End If Slut: Application.EnableEvents = True End Sub
Det var det hele, Nu skulle du bare kunne indtaste 3 eller 4 tal i hver celle, så laver koden dine indtastninger om til tidsformat.
Jeg er først på eksperten igen engang i eftermiddag.
UPS... den havde jeg glemt. Jeg sprang felt over da det var noget jeg skulle aflevere. Vil dog kigge på det alligevel, da jeg nok skal bruge det igen. Men send et svar perhol og så må jeg fordele...
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.