アプリ版:「スタンプのみでお礼する」機能のリリースについて

Access2000のフォームから、実行のボタンをクリックするとFTPサーバに接続→ファイル取得→Accessテーブルに取込→FTPサーバのファイル削除→FTPサーバの接続切断という処理をしたいのですがどのようにしたらよいかわかりません。説明不足だとは思いますが、アドバイスを宜しくお願い致します。

A 回答 (2件)

ちなみに先ほどのFTPサンプルは、BASP21をインストール後、サンプルのコードを新規モジュールに貼り付けて(たとえば以下をまるごと)実行すればAccessでもそのまま動きます。



sub file_download()

Dim ftp As Object, rc As Long, v As Variant, v2 As Variant
Dim ctr As Long

Set ftp = CreateObject("basp21.FTP")
ftp.OpenLog "c:\temp\log.txt"
rc = ftp.Connect("ftp.microsoft.com", "anonymous", "")
If rc = 0 Then
v = ftp.GetDir("bussys/winnt/winnt-public", 2) ' ディレクトリ一覧(詳細)
If IsArray(v) Then
For Each v2 In v
Debug.Print v2
Next
End If
v = ftp.GetDir("bussys/winnt/winnt-public") ' ディレクトリ一覧(ファイル名のみ)
If IsArray(v) Then
For Each v2 In v
Debug.Print v2
Next
End If
rc = ftp.GetFile("bussys/winnt/winnt-public/*", "c:\temp") 'ファイル受信

end sub

実行には20秒ほどかかります。
実行前にはCドライブにtempというフォルダを作っておいてください。
    • good
    • 0
この回答へのお礼

ありがとうございました。
参考にさせて頂きます。

お礼日時:2003/05/26 08:40

Access単体ではできないので、APIなどを使うのだと思います。



僕はAPIは面倒くさいので、BASP21というコンポーネント(Dllファイル)を使っています。

これはメールも送れるDLLなので重宝してます。

http://www.hi-ho.ne.jp/babaq/basp21.html

インストールはダウンロードしてWクリックするだけです。

FTPの方法
http://www.hi-ho.ne.jp/babaq/basp21f.html
下方の「●Visual Basic」サンプルをご参照ください。
参照設定はしなくてもコード中に「Set ftp = CreateObject("basp21.FTP")
」と1行書けば使えます。

>ファイル取得→Accessテーブルに取込

の部分は、BASP21ではなくAccessのテキストファイル操作か、カンマ区切りなら、テキストファイルのインポートで行います。いったん目的のファイルをダウンロード後、FTP接続を切ったあと、一番最後にやればいいでしょう。

参考URL:http://www.hi-ho.ne.jp/babaq/basp21.html
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!