Avatar billede rasmusoen Nybegynder
06. november 2014 - 15:06 Der er 5 kommentarer og
1 løsning

Indsætte brugernavn ved ændring i række i excel (VBA)

Hej Eksperter

Er der nogle af jer der ved om det er muligt at lave en VBA der indsætter brugernavnet i en celle hvis der er lavet en ændring i rækken/linjen?

Vil lave så jeg kan registrerer hvem der sidst har skrevet/rettet i den givne linje i excel arket.

Har forsøgt mig med nedenstående formel, og kan umiddelbart få det til at fungere med en enkel celle men ikke en hel række?
Og er der en nem måde at lave det på (har ca. 10.000 linjer), så vil være lidt ærgelig over hvis jeg skal skrive alle linje numre ind som i nedenstående.


If Rows("6:6").Value <> oldval Then
    oldval = Rows("6:6").Value
    Range("S6").Value = Application.UserName

Else
End If
Avatar billede Roehmann Nybegynder
13. november 2014 - 01:00 #1
Kopier nedenstående og sæt ind i arket, håber det er dét du søger ellers må du sige til :)



Sub Worksheet_Change(ByVal Target As Range)

'KR DESIGN -Sustainable Solutions

'Makroen kører ikke super godt fordi den kører for række 6
'og du samtidig ændrer noget i række 6, hvis du ændrer
'Range("S6") til ALT andet end noget i række 6, er det bedre!
               
    Dim MinRække As Range
    Dim IntersectRange As Range
   
    Set MinRække = Rows(6) 'her kan du ændre rækkenummer
    Set IntersectRange = Intersect(Target, MinRække)
   
    If IntersectRange Is Nothing Then
        'intet sker, ellers:
   
    Else
        'indsætter det efter lighedstegnet i nedenstående
        'linje når du ændrer/ sletter celleværdi i række 6
       
       
        DitValg = "Du ændrede en celle i række 6"
        'denne linje kan du ændre til Application.UserName
       
        Range("S6") = DitValg
       
   
    End If

End Sub
Avatar billede Roehmann Nybegynder
13. november 2014 - 01:04 #2
Hvis du kan bruge ovenstående kan du smide point her :)
Avatar billede rasmusoen Nybegynder
13. november 2014 - 09:27 #3
Mange tak for svaret, det løste mit problem, men kan der laves en snedighed så den kan gøre det udfor alle linjer i et ark, uden at man skal skrive alle linje numrene ind?
Avatar billede Roehmann Nybegynder
13. november 2014 - 15:33 #4
Jeg har siddet et par timer nu her, orker ik mere lige nu men jeg har en løsning til dig i aften! Der er lige nogle "småting" jeg skal have til at fungere, når det virker håber jeg du gir et point eller 2 :)
Avatar billede Roehmann Nybegynder
14. november 2014 - 00:18 #5
Jeg har faktisk lavet en løsning til dig men den kan rent programmeringsmæssigt godt forfines... Men jeg har noget du nok kan bruge, hvad siger du til det? :)
Avatar billede rasmusoen Nybegynder
17. november 2014 - 12:10 #6
Det vil jeg meget gerne se, jeg skal self nok smide point efter dig, kan man give flere point til tråden eller skal jeg oprette et nyt emne?
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
Kurser inden for grundlæggende programmering

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