2

Я нашел код для выполнения удаленного рабочего стола из Excel,

Sub RDP()
    Dim RetVal As Variant
    RetVal = Shell("c:\WIndows\System32\mstsc.exe " & Range("A1"), 1)
End Sub

У меня есть много серверов для администрирования, и я перечислил их в своем листе Excel:

ServerName    DBServer                APPServer

Server 1      10.21.40.20             10.21.40.24

Этот список постоянно расширяется, я ищу умный способ щелкнуть любой из этих IP-адресов, как ссылку в Excel, и выполнить приведенный выше код RDP.

Надеюсь, что это может быть сделано эффективно с помощью макросов.

1 ответ1

2

После долгих попыток вот как это сделать:

IP-адреса серверов расположены в столбцах B и C, затем Имя пользователя и Пароли в столбцах D и E.

После двойного щелчка по IP-адресу сохраняются правильные имя пользователя и пароль, после чего запускается RDP.

Это подтверждается, чтобы работать!

Спасибо всем.

   Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
        Dim RetVal As Variant
        If Target.Cells.Count = 1 Then

           If Not Intersect(Target, Range("B2:B999")) Is Nothing Or Not Intersect(Target, Range("C2:C999")) Is Nothing Then
                If Not IsEmpty(Target) Then

                     RetVal = Shell("cmdkey /generic:""" & Target & """ /user:""" & Target.Offset(0, 1) & """ /pass:""" & Target.Offset(0, 2) & """", 1)
                     RetVal = Shell("c:\Windows\System32\mstsc.exe /admin /v:" & Target, 1)
                End If
            End If
        End If
    End Sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .