首页 > 其他分享 >删除所有空文件夹

删除所有空文件夹

时间:2024-06-08 23:30:23浏览次数:10  
标签:Dim End Sub 删除 所有 文件夹 delemtydir strpath strdirname


Sub 删除所有空文件夹()
Dim strpath As String
strpath = Application.InputBox(prompt:="请输入文件夹,名称:", _
Title:="输入文件夹名称", Default:=thisworbook.Path, Type:=2)
If strpath = "False" Or strpath = "" Then Exit Sub
Call delemtydir(strpath)
End Sub
Sub delemtydir(strpath)
Dim fso As New Scripting.FileSystemObject
Dim strdirname As String
Dim lastdir As String
Dim strfld As String
Dim fld As Folder
If strpath = "False" Or strpath = "" Then Exit Sub
If Right(strpath, 1) <> "\" Then strpath = strpath & "\"
strdirname = Dir(strpath, vbDirectory)
Do While strdirname <> ""
    If strdirname <> "." And strdirname <> ".." Then
        If (GetAttr(strpath & strdirname) And vbDirectory) = vbDirectory Then
            lastdir = strdirname
            Set fld = fso.GetFolder(strpath & strdirname)
            If fld.Size = 0 Then
                fld.Delete
                strfld = Left(strpath & strdirname, InStrRev(strpath$ & strdirname, "\") - 1)
                Call delemtydir(strfld)
            Else
                Call delemtydir(strpath & strdirname)
            End If
            strdirname = Dir(strpath, vbDirectory)
            Do Until strdirname = lastdir Or strdirname = ""
                strdirname = Dir
            Loop
            If strdirname = "" Then Exit Sub
        End If
    End If
    strdirname = Dir
Loop
Set fso = Nothing
End Sub

标签:Dim,End,Sub,删除,所有,文件夹,delemtydir,strpath,strdirname
From: https://blog.csdn.net/qq490525427/article/details/139552936

相关文章

  • 代码随想录第4天 | 24. 两两交换链表中的节点、19.删除链表的倒数第N个节点、面试题 0
    题目:24.两两交换链表中的节点思路:设置虚拟头结点,双指针+临时指针,(感觉也能递归,未尝试)时间复杂度:O(n)空间复杂度:O(1)坑:1.又忘了else{}和return2.试图访问空指针,多个条件的顺序问题及"&&""||"问题,cur->next要写在cur->next->next前面/***Definitionforsingly-linked......
  • Keil一键添加.c文件和头文件路径脚本--可遍历添加整个文件夹
    最近想移植个LVGL玩玩,发现文件实在是太多了,加的手疼都没搞完,实在不想搞了就去找脚本和工具,基本没找到一个。。。。。。主要是自己也懒得去研究写脚本,偶然搜到了一个博主写的脚本,原博客地址:https://blog.csdn.net/riyue2044/article/details/139424599但是有以下问题:1.这个脚本......
  • 重新定位解决方案文件夹中的 .vs 文件夹
    我正在尝试清理我的解决方案文件夹。到目前为止,我已经按照此处的描述重新定位了由Nuget生成的软件包文件夹:C#visualstudio如何重新定位Nuget软件包文件夹?我注意到还有一个.vs文件夹,它是由C#编译器(Rosyln)生成的,在此处进行了说明:.vs文件夹......
  • 代码随想录算法训练营第四天 Leetcode 24 两两交换链表节点 Leetcode19 删除链表倒数
    链表问题首先要记住设置虚拟头节点Leetcode24两两交换链表节点题目链接思路:就是简单模拟两两交换 要注意链表节点的处理一定要获取到合适的位置比如:这一题中两个交换节点的前一个节点注意链表保存临时节点/***Definitionforsingly-linkedlist.*publicclas......
  • 如何恢复已删除的文件(简单5 分钟方法)
    本文介绍如何使用文件恢复程序恢复已删除的文件。其中包括与恢复已删除文件相关的提示。如何恢复已删除的文件从硬盘中恢复已删除的文件并不是一件疯狂的事情,但一旦意识到文件已被删除,尝试恢复会有所帮助。被删除的文件通常直到被其他文件覆盖后才真正被删除。请按照以下......
  • 如何在 iPhone 上恢复已删除的短信
    本文介绍如何检索已删除的短信和iMessage以及恢复丢失的消息。说明适用于iOS17及更高版本。如何在iOS17及更高版本中恢复文本恢复已删除短信的最简单方法是使用iOS17。从删除短信到恢复它有30到40天的时间。在“信息”的对话屏幕中,选择“过滤器”。如果您没......
  • 从 Android 恢复已删除的备份录
    本文介绍了几种在Android上恢复丢失和删除的短信的方法。这些方法都不能保证一定成功,但您可能能够恢复一些短信或其中存储的文件。首先要尝试什么首先,尝试保留数据。如果你刚刚删除了信息,请立即将手机置于飞行模式,方法是按住电源按钮并在出现的菜单中选择飞行模式。......
  • [leetcode 30 串联所有单词的子串 10ms]
    算法复杂度o(1):复杂最坏复杂度是o(s.length)和o(m*total)的最大值码代码速度要变快,变量,算法要先想清楚importjava.util.*;classSolution{publicList<Integer>findSubstring(Strings,String[]words){m=words[0].length();n=words......
  • Day17| 110.平衡二叉树、 257. 二叉树的所有路径 、 404.左叶子之和
    110.平衡二叉树(优先掌握递归)再一次涉及到,什么是高度,什么是深度,可以巩固一下。题目链接/文章讲解/视频讲解:https://programmercarl.com/0110.平衡二叉树.html#Definitionforabinarytreenode.#classTreeNode:#def__init__(self,val=0,left=None,right=None):......
  • 微信群发助手全选怎么弄?微信群发助手限制200人怎么办?微信群发消息怎么发所有人?微信群
      今天给大家推荐一款我们目前在使用的电脑群发工具掘金小蜜,不仅可以无限多开,方便你同时管理多个账号,群发功能更是十分强大,轻松释放你的双手。掘金小蜜(只支持Win7及以上操作系统,没有推Mac版和手机客户端。软件下载地址>>点击此处群发功能下载打开登录,这是账号登录进去后......