我正在努力改进我们工作的票证工具,这样技术团队就不必打开Active Directory来确保票证发送者有资格提出某些请求。我需要的是能够运行net user /domain <username>
,然后收集注释行并将其存储在VBA中的变量中。然后,变量将通过电子邮件发送到票务软件,以及用户在文本框中输入的任何内容。
我的想法是运行该命令并将输出字符串发送到另一个变量,然后从较大的输出中提取行信息,因为我似乎找不到只获取注释的方法。
我在下面添加了一个输出示例,其中箭头指向需要提取到变量中的数据。
我对VBA还很陌生,所以请耐心等待。
C:UsersjdoeDesktop>net user /domain jdoe
The request will be processed at a domain controller for domain StackOverflow.wh.
User name jdoe
Full Name John Doe
Comment Anlst Tech Supp <----- this is what needs extracted
User's comment
Country/region code 000 (System Default)
Account active Yes
Account expires Never
Password last set 11/1/2021 8:58:44 AM
Password expires 1/30/2022 8:58:44 AM
Password changeable 11/1/2021 8:58:44 AM
Password required Yes
User may change password Yes
Workstations allowed All
Logon script
User profile
Home directory
Last logon 1/15/2022 11:43:12 AM
Logon hours allowed All
Local Group Memberships
Global Group memberships *Domain Users
The command completed successfully.
On Error Resume Next
Set objWMIService = GetObject("winmgmts:\.rootcimv2")
Set config = objWMIService.ExecQuery("Select * From Win32_UserAccount")
For Each thing in Config
Msgbox thing.caption & " " & thing.Description
Next
程序员不会调用用户的命令。它们是为人类而不是程序设计的。
请参阅https://learn.microsoft.com/en-us/windows/win32/cimwin32prov/win32-useraccount了解更多信息。