Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1709|回复: 5

[已解决]求助如何不要提取没值的公式作为人次,而提取有值的出现次数作为人次

[复制链接]
发表于 2013-2-5 22:10 | 显示全部楼层 |阅读模式
求助如何不要提取没值的公式作为人次,而提取有值的出现次数作为人次 测试.rar (58.64 KB, 下载次数: 2)
发表于 2013-2-5 22:19 | 显示全部楼层    本楼为最佳答案   
arr(17, s - 2) = Application.WorksheetFunction.Count(fs.Sheets(1).Range("J6:J1000"))
COUNTA 改成COUNT

评分

参与人数 1 +1 收起 理由
qinhuan66 + 1 很给力!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2013-2-5 22:24 | 显示全部楼层
cbg2008 发表于 2013-2-5 22:19
arr(17, s - 2) = Application.WorksheetFunction.Count(fs.Sheets(1).Range("J6:J1000"))
COUNTA 改成COU ...

谢谢了兄弟 真的非常感谢您
回复

使用道具 举报

 楼主| 发表于 2013-2-6 10:53 | 显示全部楼层
cbg2008 发表于 2013-2-5 22:19
arr(17, s - 2) = Application.WorksheetFunction.Count(fs.Sheets(1).Range("J6:J1000"))
COUNTA 改成COU ...

求助cbg2008 老师
如何修改红框圈内黄底色的这句代码提取数据库文件夹的资料换成提取数据库文件夹内子文件夹的所有资料  谢谢

测试.rar (115.82 KB, 下载次数: 0)
回复

使用道具 举报

发表于 2013-2-6 13:12 | 显示全部楼层
给你一个类似的代码参考
Sub App_FileSearch()
'Stop
Const keyword As String = "*.xl*"
    Call App_SearchSubFolder(keyword, True)
    If UBound(strArr) > 0 Then
        ActiveSheet.Range("a2:a65536").Clear
        x = 0
        For i = 0 To UBound(strArr)
            If strArr(i) <> "" And strArr(i) Like "[SF]*" Then
                x = x + 1
                ActiveSheet.Hyperlinks.Add Anchor:=Cells(x + 2, "A"), _
                        Address:=strArr(i), TextToDisplay:=strArr(i)
            End If
        Next i
    Else
        MsgBox "没有发现文件"
    End If
   
End Sub

Function App_SearchSubFolder(keyword As String, rSearchSubFolders As Boolean)
Dim fd As Object
Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set fd = Application.FileDialog(msoFileDialogFolderPicker)
'    If fd.Show = -1 Then
        rLookIn = ThisWorkbook.Path    'fd.SelectedItems(1)
'    Else
'        MsgBox "未选取文件夹": Exit Function
'    End If
    rFilename = Dir$(rLookIn & "\" & keyword)
'    If rFilename = ThisWorkbook.Name Then Exit Function
    rCount = 0
    ReDim Preserve strArr(rCount)
    Do While rFilename <> vbNullString
        If rFilename <> ThisWorkbook.Name Then
            strArr(rCount) = rFilename
            rCount = rCount + 1
            ReDim Preserve strArr(rCount)
        End If
        rFilename = Dir$()
    Loop
    If rSearchSubFolders Then
        Call App_NextSubFolder(fso.GetFolder(rLookIn), keyword)
    End If
'    Set fd = Nothing
'    Set fso = Nothing
End Function

Private Sub App_NextSubFolder(ByRef Folder As Object, ByRef keyword As String)
Dim SubFolder As Object
    For Each SubFolder In Folder.SubFolders
        rFilename = Dir$(SubFolder.Path & "\" & keyword)
        Do While rFilename <> vbNullString
            strArr(rCount) = SubFolder.Path & "\" & rFilename
            rCount = rCount + 1
            ReDim Preserve strArr(rCount)
            rFilename = Dir$()
        Loop
        Call App_NextSubFolder(SubFolder, keyword)
    Next
End Sub
回复

使用道具 举报

 楼主| 发表于 2013-2-6 13:52 | 显示全部楼层
cbg2008 发表于 2013-2-6 13:12
给你一个类似的代码参考
Sub App_FileSearch()
'Stop

谢谢我琢磨一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-21 18:48 , Processed in 0.301350 second(s), 16 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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