Avatar billede Paw Winther Mester
03. november 2016 - 13:11 Der er 8 kommentarer og
2 løsninger

indsæt initialer i en celle i excel

I forbindelse med udarbejdelse af forskellige excel ark, så vil jeg gerne ved hjælp af CTRL + ALT + N, kunne indsætte mine initialer og dags dato. Dette har jeg tidligere kunne på min gamle arbejdsplads, måske de her havde lavet en standard macro hertil.

Initialerne der skal indsættes i de enkelte ark, skal være dem der er gældende for den aktuelle bruger som er logget ind.

Nogen der kan hjælpe hermed?
Avatar billede ebea Ekspert
03. november 2016 - 13:35 #1
Du kan indspille en makro hvor du skriver dine Initialer i makroen, og så placere den i "Personlig makroprojektmappe".
Når du afslutter den aktuelle Excel session, bliver du spurgt om du vil gemme din makro i din personlige projektmappe, og der skal du svare Ja. Hvorved den er tilgængelig i alle Excel dine Excel sessions, i den personlige projektmappe.
Du kan nok ikke bruge CTRL + ALT + N men er nødt til at bruge CTRL + SHIFT + N
Hvis du bruger Office 2010 (om det er sådan i andre versioner, ved jeg ikke).
Avatar billede Paw Winther Mester
03. november 2016 - 14:16 #2
Ja, udfordringen ligger mere i at den skal kunne tage initialerne fra den bruger som nu har dokumentet åbnet.

Er der ikke en formel eller noget som kan hente initialerne fra den aktuelle bruger af dokumentet, som jeg således kan bruge i min macro.

Tænker således efterfølgende at ligge macroen i alles personlige projektmapper.
Avatar billede ebea Ekspert
03. november 2016 - 14:36 #3
#2  -  Jeg ved ikke (da jeg ikke kan efterprøve det), om det kan gøres som du nævner i dit indlæg #2. Det jeg lagde op til med mit forslag, er at du kan oprette en makro, som ville kigge på den brugers personlige projektmappe (da den blev gemt der), og dermed kunne bruge genvejs tast kombinationen.
Den pågældende bruger, som aktuelt er indlogget, har jo sin egen projektmappe, og derfor tror jeg at det virker den vej rundt. Men som skrevet, kan jeg ikke efterprøve det.
Du kan jo prøve, at oprette en sådan Genvej, ved at efterprøve metoden ;-)
Avatar billede Paw Winther Mester
03. november 2016 - 14:51 #4
Men nu har jeg f.eks. initialer PAW, hvis jeg i macroen som jeg gemmer i alles projektmapper blot skriver "PAW", så indsætter den jo mine initialler, i stedet for initialerne på den person det handler om.

Jeg er med på at jeg blot kan skrive initialerne på de enkelte personer i de forskellige projekt mapper, men ville være smart med en funktion som henter navnet fra den enkelte. Således jeg kan kopiere og bruge den samme macro hos alle.
Avatar billede ebea Ekspert
03. november 2016 - 17:02 #5
#4  -  Det med at bruge samme Makro, kan du vel også, hvis du gemmer i de personlige brugeres projektmapper. Når en bruger er i sit indlog, er det jo kun den bruger der er den aktive, og dermed også i den brugers projektmappe der kigges i, hvor makroen ligger. Makrogenvejen kan vel godt være den samme, da det jo reelt er ligemeget, da det er den er gemt i den enkeltes projektmappe.
Avatar billede Paw Winther Mester
04. november 2016 - 07:58 #6
Hmm.. Ved ikke om det er mig der overser noget, men kan du skrive den macro du tænker jeg kan bruge?

Jeg har forsøgt mig med nedestående:
ActiveCell.FormulaR1C1 = "=""PAW ""&TODAY()"

Her er der 2 udfordringer:
1.: Datoen efter mine initialler bliver til nummerformat, og ikke datoformat.
2.: Kopier jeg samme macro til de andres personlige brugeres projektmapper, vil alle tilføje initialer "PAW" i stedet for deres egne. Jeg ville derfor gerne have en formel der henter initialerne fra den aktive bruger, so jeg ikke skal definere initialerne for den enkelte macro.

Udfordring 1 er den væsentligste i denne sammenhæng.
Avatar billede ebea Ekspert
04. november 2016 - 08:41 #7
Hvis du bruger funktionen "Indspil Makro" som jeg foreslog i #1, så burde det ikke kunne give nogen problemer. Du blir' bedt om at angive navn på Makro, og at oprette en genvejstaste funktion, og så at gemme den (hvor du vælger personlige projektmappe), hvorved den gemmes under den indloggede brugers profil.
Hvis du kigger i mappen, under brugere, og den pågældende bruger, så søg på "personal.xlsb" som er der hvor den pågældende gemte funktion nu ligger, hvis du gemmer den som beskrevet.
Avatar billede xl-Enthusiast Ekspert
04. november 2016 - 09:25 #8
Du kan eventuelt bruge:

Public Function UserName()
    UserName = Application.UserName
End Function

eller

Public Function UserName_2()
    UserName = Environ$("UserName")
End Function

Application:UserName er det brugernavn der er sat op i Excel Options General
Environ("Username") er det navn der er registreret for Windows

Så hvis Paw Winther er dit Excel brugernavn kan du bruge:

=STORE.BOGSTAVER(VENSTRE(username();2)&MIDT(username();FIND(" ";username())+1;1))

hvor username er ovenstående brugerdefinerede funktion.
Avatar billede Paw Winther Mester
07. november 2016 - 11:11 #9
ebea og xl-Enthusiast

Både løsning #1 og #8 virker, dog er løsning #1 betinget af man skal skrive initialerne for den enkelte medarbejder ved indspilning af macro, hvor løsning #8 vil kunne kopieres til fra bruger til bruger, uden der skal ændres i initialer.
Avatar billede xl-Enthusiast Ekspert
07. november 2016 - 13:18 #10
Jeg går ud fra du er opmærksom på, at PAW vel ikke er det man normalt forstår ved initialer for en person med kun fornavn og efternavn (Paw Winther), så derfor vil formlen i de fleste tilfælde nok skulle ændres lidt (for slet ikke at tale om situationer med mellemnavn).
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester