设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1416|回复: 8
打印 上一主题 下一主题

[模块/函数] 判断并打开C盘的文件

[复制链接]

点击这里给我发消息

跳转到指定楼层
1#
发表于 2010-1-8 13:09:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
当C:\windows\esk\acd.exe存在时就打acd.exe
当不存在时看D:\windows\esk\acd.exe存不存在,存在就打开,不存在退出
请问这个怎样写
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2010-1-8 13:19:58 | 只看该作者
用Dir判断是否存在
用超链接打开
或者直接用超链接打开,加出错代码忽略错误也行.
3#
发表于 2010-1-8 13:25:08 | 只看该作者
本帖最后由 todaynew 于 2010-1-8 13:30 编辑

大体如下:
Dim myFSO As New FileSystemObject
dim strname as string
If myFSO.FileExists("C:\windows\esk\acd.exe") = True Then
    strname="C:\windows\esk\acd.exe"
Else
    IF myFSO.FileExists("D:\windows\esk\acd.exe") = True  Then
        strname="D:\windows\esk\acd.exe"
    Else
        MsgBox "文件不存在!"
        Exit Sub
    End If
End If
Shell strname

注意:需要增加引用 Microsoft Office 12.0 Object Library

点击这里给我发消息

4#
 楼主| 发表于 2010-1-8 13:27:46 | 只看该作者
另外还能不能加个条件,就是当进程中有就不运行
5#
发表于 2010-1-8 13:35:23 | 只看该作者
另外还能不能加个条件,就是当进程中有就不运行
真主 发表于 2010-1-8 13:27

进程中有不知道怎么判断,呵呵。
6#
发表于 2010-1-8 13:41:37 | 只看该作者
本帖最后由 红尘如烟 于 2010-1-8 13:48 编辑

其实只要一句代码就行了,不过要注意错误处理:

  1. On Error Resume Next
  2. If Shell("C:\windows\esk\acd.exe", vbNormalFocus) = 0 Then Shell "D:\windows\esk\acd.exe", vbNormalFocus
复制代码
7#
发表于 2010-1-8 14:12:42 | 只看该作者
学习收藏
留以备用

点击这里给我发消息

8#
 楼主| 发表于 2010-1-8 14:24:07 | 只看该作者
无法运行或生成MBE文件
运行时提示“Dim myFSO As New FileSystemObject” 用户定义类型未定义
9#
发表于 2010-1-8 15:22:14 | 只看该作者
不记得需要引用下面的两个中的哪一个了,两个都引用一定可以。
Microsoft Office 12.0 Object Library
Microsoft Scripting Runtime
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-9-23 20:24 , Processed in 0.116151 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表