Загрузить Excel прямо на диск (C: \) (не требуется сохранять как опцию) VBA Excel - PullRequest
0 голосов
/ 20 января 2019

Я новичок в VBA.Пожалуйста, помогите мне загрузить файл Excel прямо на мой диск.У меня есть только возможность щелкнуть элемент и запросить диалоговое окно «Сохранить как».

Application.StatusBar = "Saving - Dashboard.xlsx" Set InputElement = doc.querySelector ("span.export [class = 'export excel'")

    If Not InputElement Is Nothing Then

    InputElement.Click

Я запускаю этокод каждый час, я не могу нажать кнопку Сохранить как каждый час.

Я думал о загрузке автоматического загрузчика, но не добился большого успеха.Потому что у меня есть права администратора и вне политики.

Public Sub OpenIE_Login ()

Set IE = New InternetExplorer

IE.Visible = True

IE.Navigate cURL



Do While IE.readyState <> READYSTATE_COMPLETE Or IE.Busy: DoEvents: Loop ''' ATTENTION - PAUSE HERE


    Set doc = IE.Document



    Set LoginForm = doc.forms(0)

    Set InputElement = doc.querySelector("input#userName[id='userName']")

    If Not InputElement Is Nothing Then
        InputElement.Value = cUsername
    End If

'

Set InputElement = doc.querySelector ("input.field[type = 'password'] ")

    If Not InputElement Is Nothing Then
        InputElement.Value = cPassword
    End If

Application.StatusBar = "Saving - WokingHours.xlsx"

Set InputElement = doc.querySelector (" span.export [class = 'export excel' ") 'Dim TempStr как строка, если не InputElement - это ничто, то'TempStr = InputElement.Value InputElement.Click

End Sub

1 Ответ

0 голосов
/ 21 января 2019

Вы не опубликовали код, который фактически загружает файл.В заголовке темы Вы сказали VBA Excel, но ваш код с использованием объекта IE.

Если у вас есть URL-адрес файла, вы можете обратиться к приведенному ниже примеру для загрузки файла.

Private Declare PtrSafe Function URLDownloadToFile Lib "urlmon" _
    Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, _
    ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
Sub demo()

Dim strURL As String
Dim LocalFilePath As String
Dim DownloadStatus As Long

    strURL = "http://data.iana.org/TLD/tlds-alpha-by-domain.txt"
    LocalFilePath = "C:\Users\panchals\Desktop\sample.txt"
    DownloadStatus = URLDownloadToFile(0, strURL, LocalFilePath, 0, 0)
    If DownloadStatus = 0 Then
        MsgBox "File Downloaded. Check in this path: " & LocalFilePath
    Else
        MsgBox "Download File Process Failed"
    End If
End Sub

Вам нужно изменить код в соответствии с вашими требованиями.

Ссылка:

Загрузить файлы с VBA URLDownloadToFile

...