当前位置:首页 » 文件管理 » excelvba上传附件

excelvba上传附件

发布时间: 2023-09-20 07:13:09

Ⅰ Excel 怎样用vba实现文件上传ftp服务中

VBA访问FTP进行文件传输的,网络上见到3种方式,用过2种。

一、VBA+DOS批处理的方式,本质上还是通过DOS来进行,有点麻烦,而且运行中会弹出CMD窗口,现在已经不用这种方法了。

VBA写DOS:

OpengetfdForOutputAs#1
Print#1,""
Print#1,"("
Print#1,"echo;openxx.xx.xx.xx"
Print#1,"echo;user"
Print#1,"echo;pwd"
Print#1,"echo;cd""";ftpfdx8;""""
Print#1,"echo;prompt"
Print#1,"echo;dir"
Print#1,"echo;bye"
Print#1,")>""";fdx8;""""
Print#1,

Print#1,"ftp-v-i-s:""";fdx8;"""|find""ftpgroup"">""";folderx8;""""
Print#1,

VBA运行它:

Shell("ftp-v-i-s:"&ftpfile)

二、VBA调用API,具体是basp21.dll

详见http://www.hi-ho.ne.jp/babaq/eng/basp21f.html,说明很详细,有实例

示例如下,比较简单易懂,其中getfile为下载,上传使用putfile就好了。

PrivateSubForm_Load()
DimftpAsObject,rcAsLong,vAsVariant,v2AsVariant
DimctrAsLong
Setftp=CreateObject("basp21.FTP")
ftp.OpenLog"c: emplog.txt"
rc=ftp.Connect("ftp.microsoft.com","anonymous","")
Ifrc=0Then
v=ftp.GetDir("bussys/winnt/winnt-public",2)
IfIsArray(v)Then
ForEachv2Inv
Debug.Printv2
Next
EndIf
v=ftp.GetDir("bussys/winnt/winnt-public")
IfIsArray(v)Then
ForEachv2Inv
Debug.Printv2
Next
EndIf
rc=ftp.GetFile("bussys/winnt/winnt-public/*","c: emp")
EndIf
End
EndSub
热点内容
安卓odd是什么意思 发布:2025-05-14 04:49:57 浏览:919
安卓哪个app能查询航班 发布:2025-05-14 04:49:04 浏览:556
linux定时shell脚本 发布:2025-05-14 04:49:00 浏览:682
审计需要什么配置 发布:2025-05-14 04:48:55 浏览:548
安卓软件为什么经常自启动 发布:2025-05-14 04:38:17 浏览:159
谭浩强c语言第三版课后答案 发布:2025-05-14 04:37:31 浏览:59
san存储和nas存储 发布:2025-05-14 04:34:44 浏览:152
幽灵战士3什么配置 发布:2025-05-14 04:33:53 浏览:114
安卓的虚拟机哪个好用 发布:2025-05-14 04:32:34 浏览:871
宿迁存储式化工设备 发布:2025-05-14 04:32:33 浏览:54