Workbooks.Open "ftp://Book1.xls"
としてファイルを開こうとすると、ユーザ名, パスワードを入力した後、エラーになってしまいます。
実行している環境が会社にあるので、細かい状況等を説明できませんが、
何か思い当たるものがありましたら、教えていただけないでしょうか。
うまくいく方法がなければ、おとなしく一度 FTP でダウンロード、ローカルに保存してから操作しようかと考えております。
http://officetanaka.net/excel/vba/tips/tips47.htm
【1】必要なプロトコル
Excelはファイルを開く際に作業領域を必要とするため、smbなどのファイル共有に対応したプロトコルでの接続環境がサーバー側にも必要となります
(FTPはファイルを転送する機能しか持たないため、xlsファイルをオープンすることすら出来ません)
【2】対策
(1)ローカルに保存してから操作
作業領域もローカルに準備されるため、それが最善の策となります
(2)smbサーバー環境の構築
サーバー環境を構築できるのであれば、下記のようなものになりますが、サーバーがインターネット上やインターネットで接続された先にある場合はデータ転送速度がネックとなり、最悪の場合はxlsファイルのデータ破損という場合もありますので(1)のローカル保存が最適です
FTPサーバーがLinux/BSDならばsambaの導入
FTPサーバーがMacOSXならばWindowsファイル共有の設定
FTPサーバーがWindowsならばファイル共有の設定
【3】Excelからの脱却?
Excelのファイル共有はLAN内部では使い物にもなりますが、遠隔地との連携には弱いため、他の方法(データベースサーバーを準備してWeb上で完遂するようなシステムを構築するなど)が必要になる場合もあります
自前でシステムを作るとなると大変なので、クラウドに対応したGoogleスプレッドシートを使うなどという手も最近では増えつつあります
【1】必要なプロトコル
Excelはファイルを開く際に作業領域を必要とするため、smbなどのファイル共有に対応したプロトコルでの接続環境がサーバー側にも必要となります
(FTPはファイルを転送する機能しか持たないため、xlsファイルをオープンすることすら出来ません)
【2】対策
(1)ローカルに保存してから操作
作業領域もローカルに準備されるため、それが最善の策となります
(2)smbサーバー環境の構築
サーバー環境を構築できるのであれば、下記のようなものになりますが、サーバーがインターネット上やインターネットで接続された先にある場合はデータ転送速度がネックとなり、最悪の場合はxlsファイルのデータ破損という場合もありますので(1)のローカル保存が最適です
FTPサーバーがLinux/BSDならばsambaの導入
FTPサーバーがMacOSXならばWindowsファイル共有の設定
FTPサーバーがWindowsならばファイル共有の設定
【3】Excelからの脱却?
Excelのファイル共有はLAN内部では使い物にもなりますが、遠隔地との連携には弱いため、他の方法(データベースサーバーを準備してWeb上で完遂するようなシステムを構築するなど)が必要になる場合もあります
自前でシステムを作るとなると大変なので、クラウドに対応したGoogleスプレッドシートを使うなどという手も最近では増えつつあります
こんなにすばらしい回答をしていただき、本当にありがとうございます。
FTP のデータ転送にはアクティブモードとパッシブモードの2つがあります。
まず、FTP クライアントにて試してみてください。
それか、ユーザー名とパスワードを入力するのが遅くてタイムアウトになってる可能性も含めて、
FTP のアドレスは ftp://username:password@address.jp/Book1.xls でやってみるとどうでしょうか?
ご回答ありがとうございます。
こんなにすばらしい回答をしていただき、本当にありがとうございます。