设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 2911|回复: 13
打印 上一主题 下一主题

[其它] 關于getopenfilename的用法.

[复制链接]
跳转到指定楼层
1#
发表于 2003-11-1 01:31:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
花了一天時間調試一段語句...
結果居然是引用apd函數的getopenfilename的問題
(返回值多了一個空格,而錯誤提示又不是說文件名錯...,真是苦啊,,,)
真是....
一知半解真的要不得..
所以...
那位大俠把這個函數的詳細用法貼出來,參考一下啊,
我不勝感激...
(請不要只貼範例代碼...)
先謝了
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2003-11-1 17:42:00 | 只看该作者
想实现什么功能?是API函数吧?你写的是apd函數。
3#
 楼主| 发表于 2003-11-1 17:54:00 | 只看该作者
是api,打錯了..呵呵
想實現的功能,只能簡單的打開"開啟檔案"對話框,選擇一個檔案名,
然后按這個檔案名交回給程序處理...
原來一直不想用這個,后來不用還不行...
據我所知:有三種辦法可以讀取路徑名+文件名
1.用api函數
Public Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" (pOpenfilename As openfilename) As Long

2.用excel的getopenfilename
自創的,但調用簡單,但較慢...

3.用那個dia...的什么控件..
這個不知引用那一個,且用法也不清楚..

對比這三種方法...
不知那一種較好...
原來用第二種,但較慢,放棄了,現用第一種,但也不是很清楚

所以...

誰來做個這題目....
4#
发表于 2003-11-1 18:41:00 | 只看该作者
http://www.erpbus.net/access/topic.asp?topic_id=9648&forum_id=84&CurPage=2
這個是
ACCESS交流中心
沉入海底的東西

去打撈吧



[此贴子已经被作者于2003-11-1 10:41:49编辑过]

5#
 楼主| 发表于 2003-11-1 19:31:00 | 只看该作者
好像是關于鏈接表的例子啊...
6#
发表于 2003-11-1 20:07:00 | 只看该作者

Dim strSearchPath As String
Dim strFileName As String
strSearchPath = "c:\"
   strFileName = FindNorthwind(strSearchPath)   '
MsgBox strFileName    路徑名+文件名  



[此贴子已经被作者于2003-11-1 13:14:55编辑过]

7#
 楼主| 发表于 2003-11-2 00:55:00 | 只看该作者
FindNorthwind
这个是什么函数,自制的还是ACCESS有的。。。没见过啊 。。。
8#
发表于 2003-11-2 07:42:00 | 只看该作者
Private Sub Command0_Click()

Dim strSearchPath As String
Dim strFileName As String
strSearchPath = "c:\"
   strFileName = FindNorthwind(strSearchPath)   '
MsgBox strFileName    路徑名+文件名

End Sub
我的意思是
作個按鍵button
執行上述指令
FindNorthwind 是公用模組(自製)


9#
 楼主| 发表于 2003-11-3 16:12:00 | 只看该作者
呵呵....
我就是問FindNorthwind怎么寫的...
還要麻煩你的....
10#
发表于 2003-11-3 18:26:00 | 只看该作者
嘻嘻,前天也看了这个帖子,不知道自己理解的对不对,不敢回答
这里把我关于文件存取的实现写下来,不知道是不是你需求的功能!
首先引用  Microsoft Windows Common Controls 6.0  即(Mscomctl.ocx)
然后就可以在窗体中加入ActiveX控件  CommonDialog ,命名为 【dlgCommon】
VBA实现:

Dim tmpFileName As String, DBfile As String, Xpath As String
    Dim Response
   ‘使用iif,主要是如果选定的文件在"d:\"的话,会多了一个“\“,所以要去掉,否则会出错
    Xpath = IIf(Len(Application.CurrentProject.Path) = 3, Left(Application.CurrentProject.Path, 2), Application.CurrentProject.Path)
     
    DBfile = Xpath & "\dbsourcedb.mdb"
    Me.dlgCommon.CancelError = False
    Me.dlgCommon.ShowOpen
   ’这个就是取到文件名,不知道是不是ADAM想要得
    tmpFileName = Me.dlgCommon.FileName
    If Len(tmpFileName) > 0 Then
        Response = MsgBox("还原指定的备份文件将不可逆操作!!" & vbCrLf & "确认选定的备份文件正确么?", vbYesNo, "数据库还原")
        If Response = vbYes Then
            Kill DBfile
            FileCopy tmpFileName, DBfile
            MsgBox "数据库已还原为指定的备份文件!"
        Else
            MsgBox "还原操作已撤销!"
         End If
    'tmpFileName = IIf(InStrRev(Me.dlgCommon.FileName, "\") > 0, Right(Me.dlgCommon.FileName, Len(Me.dlgCommon.FileName) - k), Me.dlgCommon.FileName)
    Else
        MsgBox "未选定备份文件,还原操作已撤销!"
    End If
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-6-8 04:14 , Processed in 0.099787 second(s), 33 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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