Avatar billede Pernille Praktikant
10. august 2020 - 09:48 Der er 6 kommentarer

Fejlmeddelse ved makroafspilning

Hej!

Jeg prøver at køre en makro, der skal hente identifikation på mig som bruger. Det er et regneark som skal udfyldes ifm. noget dokumentation og hvor denne dokumentation således skal lagres på en hjemmeside og hvorfra det således skal fremgå at jeg er "forfatteren".

Får dog følgende fejlmeddelse når jeg prøver at køre den.

Dine informationer kunne ikke hentes!
Automationerror
En angivet logonsession findes ikke. Den er måske allerede afsluttet.

Nogle der ved hvad denne fejl betyder og hvordan den evetuelt kan løses?

På forhånd tak :-)
Avatar billede Juul Forsker
10. august 2020 - 09:54 #1
Det kræver nok at vi får lov til at se makroen :)
Avatar billede Pernille Praktikant
10. august 2020 - 10:22 #2
Den kommer her ;-)

Option Explicit

Public Sub GetUserInfo()
   
    On Error GoTo Errhandler
   
    Sheets(1).Cells(1, 2).Value = GetOwnerName 'ldap username
    Sheets(1).Cells(2, 2).Value = GetUserDomain 'ldap username
   
Exit Sub
Errhandler:
    Exit Sub
End Sub

Private Function GetUserDomain() As String
   
    On Error GoTo Errhandler
   
    Dim OSinfo As New ActiveDs.WinNTSystemInfo
   

    If Len(OSinfo.DomainName) = 0 Or (OSinfo.ComputerName = OSinfo.DomainName) Then
        GetUserDomain = Application.OrganizationName 'excel registered organization name
    Else
        GetUserDomain = OSinfo.DomainName 'Wins name
    End If
   
   
    Set OSinfo = Nothing

Exit Function
Errhandler:
    Set OSinfo = Nothing
    Call MsgBox("Dine informationer kunne ikke hentes!" & vbCrLf & Err.Description, vbCritical + vbOKOnly, "Advarsel")
    Exit Function
   
End Function


Private Function GetOwnerName() As String
   
    On Error GoTo Errhandler
   
    Dim OSinfo As New ActiveDs.WinNTSystemInfo
   
    Dim s As String
   
    If Len(OSinfo.UserName) > 0 Then
        s = OSinfo.UserName & "/" & OSinfo.DomainName 'Netbios user and domain
    Else
        s = Application.UserName
    End If
   
   
    GetOwnerName = s
   
 
   
    Set OSinfo = Nothing
   
Exit Function
Errhandler:
    Set OSinfo = Nothing
    Call MsgBox("Dine informationer kunne ikke hentes!" & vbCrLf & Err.Description, vbCritical + vbOKOnly, "Advarsel")
    Exit Function
End Function
Avatar billede Juul Forsker
10. august 2020 - 13:50 #3
Ser jeg forkert, eller prøver den at hente info op WinNT? NT er jo fra 1993, og er muligvis derfor det ikke virker..
Avatar billede Slettet bruger
10. august 2020 - 17:18 #4
kører makroen som bruger eller som programmet?
Er du logget på med en domænebruger, eller lokalt?
Har du startet Excel som administrator?
Hvilket af dine funktioner/sub giver fejlen? har du prøvet at køre step-by-step for at finde ud af, hvad programmet finder?
Avatar billede Jan K Ekspert
11. august 2020 - 09:20 #5
Jeg kan ikke helt gennemskue, hvilken information, du ønsker, men måske kan du blive inspireret af denne, som viser navn og domæne, du er logget på.

Function NameAndDomain() As String
    Dim WSHnet, UserName, UserDomain, objUser
    Set WSHnet = CreateObject("WScript.Network")
    UserName = WSHnet.UserName
    UserDomain = WSHnet.UserDomain
    Set objUser = GetObject("WinNT://" & UserDomain & "/" & UserName & ",user")
    NameAndDomain = objUser.FullName & " " & "at " & UserDomain
End Function
Avatar billede store-morten Ekspert
11. august 2020 - 21:20 #6
Sub test()
Dim WSHnet
Dim objUser
Dim Oplysning

Set WSHnet = CreateObject("WScript.Network")
Set objUser = GetObject("WinNT://" & WSHnet.UserDomain & "/" & WSHnet.UserName & ",user")

    Oplysning = MsgBox(WSHnet.UserName, , "PC brugernavn")
    Oplysning = MsgBox(objUser.FullName, , "PC fulde brugernavn")
    Oplysning = MsgBox(WSHnet.UserDomain, , "Domæne")
    Oplysning = MsgBox(Application.UserName, , "Excel brugernavn")
    Set Oplysning = Nothing
End Sub
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

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