2015-12-24 3 views
0

Как скопировать файл с удаленного рабочего стола на локальный компьютер с помощью Excel VBA?Как скопировать один файл с удаленного рабочего стола на локальный компьютер с помощью Excel VBA

+1

что диск или общая папка вы отобразили через соединение удаленного рабочего стола? Если это книга, которая хочет копировать, достаточно [Workbook.SaveAs method] (https://msdn.microsoft.com/en-us/library/office/ff841185.aspx). – Jeeped

+1

Просто, чтобы вы знали, «удаленный рабочий стол» и «локальная машина» просто добавляют ненужную сложность этому вопросу. По сути, вы просто хотите скопировать/сохранить файл в сетевом расположении. Подумайте об этом из контекста файла/скрипта. –

+1

Дополнительная мысль: Если вы на самом деле пытаетесь скопировать на «локальную машину», независимо от того, какая машина подключена, это значительно значительно сложнее. –

ответ

2

Да, вы можете копировать файлы между разными компьютерами/серверами в VBA. Вы не указали многое, поэтому здесь приведен пример копирования с локальной машины на удаленную машину. Просто измените параметры для копии (или перемещения) для обратного.

В моем примере я получаю доступ к доле администратора «Z $» на удаленной машине. Вы можете указать любое имя общего ресурса.

Я испытал это в Excel 2013.

Option Explicit 'always declare your vars! 

Sub CopyFile() 
    Dim FSO:   Set FSO = CreateObject("Scripting.FileSystemObject") 
    Dim strFile:  strFile = "c:\temp\RemoteCopyTest\mytestfile.txt" 
    Dim strTargetPath: strTargetPath = "\\Server\Z$\" 

    'verify the remote folder exists 
    If FSO.FolderExists(strTargetPath) Then 
     'verify the source file exists 
     If FSO.FileExists(strFile) Then 
      'use FSO.MoveFile <Source>,<Target> if you want to move instead of copy 
      FSO.CopyFile strFile, strTargetPath 
     Else 
      MsgBox "ERROR: Source FIle does not exist or is not accessible." 
     End If 
    Else 
     MsgBox "ERROR: Target Folder does not exist or is not accessible." 
    End If 
End Sub 
0

При подключении к удаленному ПК \ Server, у вас есть варианты для совместного использования ресурсов, то есть, если вы используете подключение к удаленному рабочему столу его параметры \ г Локальные ресурсы \ Дополнительно \ Drives

Вы можете выбрать свой локальный диск c, который теперь будет доступен вам на удаленном компьютере ... в проводнике Windows.

Так при запуске Excel VBA вы просто должны переместить файл с удаленного на локальный диск C, перечисленный на удаленном компьютере (это может придать ему новую букву диска)

Как DevilsAdvocate имеет said..its просто скопировать 1 файл отсюда туда

BTW вы можете сохранить настройки удаленного подключения ... так, что его одни и те же настройки каждый раз, когда вы подключаетесь к этому ПК/сервер