回 帖 发 新 帖 刷新版面

主题:自动打开文件夹

我有下列一段代码:
FOR i=2 TO 155
CD d:\czmx
xlsnamehbl=Getfile("dbf")
-----------------------
------------------------
endfor
这样每循环一步,就必须按命令按钮,请问能不能将xlsnamehbl=Getfile("dbf")
改一改,自动打开文件夹,选取自己需要的文件呢?
我的程序编写已快进入尾声,在这里特别感谢moz和cb1518两位老师,若没有两位老师的热情帮助,我是不会编写出来今天的程序的.愿咱们这个网站越来人气越旺.

回复列表 (共14个回复)

沙发

RUN explorer d:\czmx

板凳

谢谢moz老师,可能我没把问题表达清楚,RUN explorer d:\czmx可以打开文件夹,但我的操作中没有实际意义,.
   我的意思是指自动打开类似xlsnamehbl=Getfile("dbf")运行时窗口,选取自己需要的文件,使其等于xlsnamehbl,然后运行自己下面的程序.

3 楼

不要使用getfile( )
直接使用xlsnamehbl="需要的文件名"

4 楼

moz老师,请问我以下一段代码:
FOR i=2 TO 155
CD d:\czmx
xlsnamehbl=Getfile("dbf")
-----------------------
------------------------
endfor
怎么改呢?谢谢

5 楼

[quote]moz老师,请问我以下一段代码:
FOR i=2 TO 155
CD d:\czmx
xlsnamehbl=Getfile("dbf")
-----------------------
------------------------
endfor
怎么改呢?谢谢
[/quote]

你的目的是,让用户选择一个文件夹中的所有“dbf”文件吗!

6 楼

叙述不清!!!

最重要的是,你把你的目的讲清楚!
为什么要循环 100 多次,让用户选择文件,还不把用户累迷糊了!

7 楼

[quote]我的意思是指自动打开类似xlsnamehbl=Getfile("dbf")运行时窗口,选取自己需要的文件[/quote]
你所需要的文件有共同特征么?
比如说全部字母A带头的DBF文件

xlsnamehbl="A*.DBF"

又或者是没有共同特征的部份确定文件名的文件列表:
T4="A.dbf,B.dbf,C.dbf,D.dbf,"
DO WHILE !EMPTY(T4)
   copy file (left(T4,AT(",",T4)-1)) to ......
   T4=SUBSTR(T4,AT(",",T4)+1)
Enddo

8 楼

[quote]
   我的意思是指自动打开类似xlsnamehbl=Getfile("dbf")运行时窗口,选取自己需要的文件,使其等于xlsnamehbl,然后运行自己下面的程序.[/quote]
ADIR(aDir0,"d:\czmx\*.dbf")
FOR i=1 TO ALEN(aDir0,1)
xlsnamehbl=aDir0[i,1]
IF MESSAGEBOX("你需要《"+xlsnamehbl+"》吗?",36)=7
    LOOP
ENDIF
?"处理文件 d:\czmx\"+xlsnamehbl
*-----------------------
*------------------------
ENDFOR

9 楼

我的原程序是财政数据有400条记录,其中如有市委,市委办公室,市委组织部,财政局,建设局等,现在的目的是将市委,市委办公室,市委组织部等数十个文件合为一个文件,即是市委的一类.
   这说需要如在市委一个主文件基础上,在选择如市委办公室,市委组织部等多个次文件,我用一个命令按钮,用了以下代码
FOR i=2 TO 30
CD d:\czmx
xlsnamehbl=Getfile("dbf")
-----------------------
------------------------
endfor
这样循环一次,就需要按一次命令按钮,太累了,能否循环一次,不用按命令按钮,直接打开如xlsnamehbl=Getfile("dbf")的对话框,那就太好了.
  请高手们指教.

10 楼

把“文件夹名“、“文件名”都放在一个表中,把表“扫描”一次不就得了?!(要记得字符类型最出后要作前、后去掉“空格”处理)

我来回复

您尚未登录,请登录后再回复。点此登录或注册