Potrzebuję pobrać plik CSV ze strony internetowej przy użyciu języka VBA w programie Excel. Serwer musiał również uwierzytelnić mnie, ponieważ były to dane z usługi ankiet.Jak pobrać plik przy użyciu VBA (bez przeglądarki internetowej)
Znalazłem wiele przykładów przy użyciu przeglądarki Internet Explorer sterowanej za pomocą VBA. Jednak były to głównie powolne roztwory, a większość z nich także była zawiłowana.
Update: Po pewnym czasie znalazł ładne roztwór przy użyciu obiektu Microsoft.XMLHTTP w programie Excel. Pomyślałem, aby udostępnić poniższe rozwiązanie w celu późniejszego wykorzystania.
Dzięki - bardzo fajnie. Moim jedynym problemem jest to, że wtedy każdy, kto dostanie się do VBA twojego pliku, ma twoje hasło. Wszelkie wskazówki, jak to obejść lub w jakiś sposób zaszyfrować? Dzięki jeszcze raz! – rryanp
Nie ma problemu :) Masz rację, nie jest dobrą praktyką przechowywanie haseł w kodzie. W Ruby zawsze używam zmiennych środowiskowych, prawdopodobnie możesz zrobić coś podobnego w VBA. W programie Excel można szyfrować pliki, aby użytkownicy nie mogli podać kodu. Nigdy tego nie próbowałem, ale spróbuj tego linku: http://www.vbaexpress.com/forum/showthread.php?914-how-to-encrypt-vba-code-on-the-fly –
Co to jest "myURL" = ... responseBody "(tuż przed If) dla? Wydaje się niepotrzebne ... –