您的位置:程序门 -> vb -> vba



各位大虾,小弟有一个关于vba的问题,对我来说是超级难,请多多帮助


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


各位大虾,小弟有一个关于vba的问题,对我来说是超级难,请多多帮助[已结贴,结贴人:abcabc0]
发表于:2008-02-02 13:08:41 楼主
在excel中有一个按钮,你点它,它就会弹出打开文件夹对话框,不是的打开文件的哟,是文件夹的.之后就把它的路径显示在某个单元格里,单元格位置不要紧.
我主要是想解决对一个文件夹里的全部.xls文件做操作.如果有更好的方法,也请各位大虾帮帮小弟.
我有一些代码,但是我在运行是有错.说是找不到,如下:

public   objfilesystem   as   new   scripting.filesystemobject

public   function   initialize()
              dim   objfolder   as   scripting.folder
              dim   objfile   as   scripting.file
              sfilepath=worksheets(1).cells(1,1).value  
        set   objfolder   =   objfilesystem.getfolder(sfilepath)
       
        'ファイルの取得
        if   objfolder.files.count   =   0   then
                msgbox   ("フォルダにファイルがありません。")
                end
               
        end   if
       
        for   each   objfile   in   objfolder.files
               
               
                if   right(objfile.name,   3)   <>   "xls"   then
               
               
                     
                      msgbox   objfile.name
                end   if
               
        next   objfile

发表于:2008-02-02 13:11:371楼 得分:0
还有就是:"在工程里引用microsoft       scripting       runtime库"是什么意思哟,各位大虾帮帮忙咯.
发表于:2008-02-02 13:13:152楼 得分:0
在线等..............能用,马上加分,如果说分少我可以加
在线等哟.................................
发表于:2008-02-02 13:50:333楼 得分:20
在工程里引用microsoft   scripting   runtime库是为了用filesystemobject。
现在有事,等等回答你。
发表于:2008-02-02 14:29:054楼 得分:0
好的,谢谢你哟,
你有空的时候能不能在说一说哟
发表于:2008-02-02 20:34:275楼 得分:100
我以前写过的一个函数,你参考就能用,可只取文件夹名而不取文件名

private   function   choicedirectoryonly(byref   strtitle   as   string)   as   string
        dim   shapp   as   object,   path1   as   object
        strtitle   =   "请选择"   &   strtitle   &   "文件夹"
        set   shapp   =   createobject("shell.application")
        set   path1   =   shapp.browseforfolder(0,   strtitle,   0,   17)

        if   path1   is   nothing   then
                choicedirectoryonly   =   ""
        else
                choicedirectoryonly   =   iif(iserror(path1.items.item.path),   path1.title,   path1.items.item.path)
        end   if
end   function

private   sub   commandbutton6_click()
        txtoutputpath.text   =   choicedirectoryonly("上报数据")
end   sub

然后用dir(*.xls)就可遍历此文件夹下的所有xls,不明白再问。
不好意思,分是有点少.....哈哈哈...
发表于:2008-02-04 10:54:286楼 得分:0
  谢谢了,已搞定.这个分嘛,你在我的另一个贴中去up,我给你分吧,真的谢谢了.
另一个贴:   http://topic.csdn.net/u/20080116/15/045892c8-0554-4408-9caf-bcc796ce80bb.html


快速检索

最新资讯
热门点击