精华内容
下载资源
问答
  • 2012-12-12 12:38:44
    Sub test()
        Dim begin As Integer
        Dim endValue As Integer
        Dim jg As Integer
        
        begin = 3  '开始行
        endValue = 493 '结束行
        jg = 1 '间隔  '千万不要以为是2,因为当第3行被删除后,第5行已经变成了第4行
        Dim i As Integer
        
        For i = begin To endValue Step jg
            Range("A" & i).EntireRow.Delete
            
        Next i
    End Sub
    
    Private Sub Worksheet_Activate()
        Call test
    End Sub 


     注:Range("A1").EntireColumn.Delete 这样是删除A1整列

           Range("A1").EntireRow.Delete 这样是删除A1整行

            Range("A1").Delete 这是删除A1单元格  A2单元格会移上去

         上述命令就好像 你选中A1单元格后,右击选择 -》删除 ,在弹出对话框中有四个选项

       

    更多相关内容
  • VBA实现批量删除指定文件夹下工作表表头,如图所示,删除前与删除后效果。 但在运行时出错 (文件夹内工作薄模拟了上报的数据,只能保证结构相同,数据质量得不到保证,要求在这种情况下运行),请各位高手帮我看看...

    用VBA实现批量删除指定文件夹下工作表表头,如图所示,删除前与删除后效果。

    但在运行时出错

    (文件夹内工作薄模拟了上报的数据,只能保证结构相同,数据质量得不到保证,要求在这种情况下运行),请各位高手帮我看看代码错在哪儿?

    补充内容(2015-7-30 15:32:23):

    Sub deleteheadline()

    Dim Fso As Object, Folder As Object

    Dim i&, n&, a, b, Wb As Workbook, p$

    With Application.FileDialog(msoFileDialogFolderPicker)

    .InitialFileName = ThisWorkbook.Path & "\"

    If .Show = False Then Exit Sub

    p = .SelectedItems(1)

    End With

    Application.ScreenUpdating = False

    Application.DisplayAlerts = False

    Set Fso = CreateObject("Scripting.FileSystemObject")

    With ThisWorkbook

    For Each File In Fso.GetFolder(p).Files

    If File.Name Like "*.xls" Then

    n = n + 1

    Set Wb = Workbooks.Open(File)

    Application.DisplayAlerts = False

    If ThisWorkbook.MultiUserEditing Then

    ThisWorkbook.UnprotectSharing ("")

    End If

    Application.DisplayAlerts = True

    Wb.Unprotect

    Wb.Sheets("基本情况(填表)").Unprotect

    Wb.Sheets("基本情况(填表)").Rows("1:4").delete

    Wb.Close False

    End If

    Next

    End With

    Set Fso = Nothing

    Application.ScreenUpdating = True

    MsgBox "表头已删除!"

    End Sub

    补充内容(2015-7-30 15:33:13):

    展开全文
  • 前景提要昨天我们学习了一下批量删除空白工作表的方法,那么自然工作表的删除就没有任何的问题了,不过有时候当我们通过VBA批量删除工作表数据的时候,可能会碰到一个问题,一时兴起把一些主要的工作表数据删除了,...

    前景提要

    昨天我们学习了一下批量删除空白工作表的方法,那么自然工作表的删除就没有任何的问题了,不过有时候当我们通过VBA批量删除工作表数据的时候,可能会碰到一个问题,一时兴起把一些主要的工作表数据删除了,这就非常的尴尬了,我们都知道VBA操作的不可逆,所以我们在进行批量工作表删除的时候,要留意一些关键工作表数据的保护,so,如何实现呢?

    场景说明

    这是我们之前使用过的工作表,我们这里有很多个工作表

    e9c8f7a88f02f07043086e36372dc20b.png

    当我们完成了数据的汇总和整理之后,我们现在只需要保留总表这个工作表就可以了, 所以我们按照之前的VBA代码打算将除去总表以外的其他的所有的工作表都删除,但是我们注意到其中有一个标红的工作表,是考核标准,这个工作表数据是不能删除的,因为后续的考核都是要用这个表的,但是如果用VBA代码去删除工作表就会把这个表一起删除,因为他的名字不等于“总表”那么怎么办呢?

    代码区

    其实今天的方法比较的直接,并不算是一个最好的方法,但是我们的初衷就是要实现效果,得到目的就可以了。 来看看代码

    Private Sub Worksheet_BeforeDelete()

    ActiveWorkbook.Protect "床前明月光"

    MsgBox "此工作表禁止删除"

    On Error Resume Next

    Exit Sub

    End Sub

    是的,我们今天的代码是写在考核标准这个工作表的里面的,并不是写在模块中的

    8cee274e4801bed2e370de062414ce65.png

    这样的目的是什么呢?就是在执行删除操作之前,执行一个操作,制造一点小麻烦,让删除程序没有办法顺利的进行。我们来看看效果

    992a0571d4620307f1b6785de24866d4.png

    当程序开始的时候,其他的 工作表都已经被删除完毕了,但是当删除到考核标准这个工作表之后,我们发现他并没有被删除,反而弹出了一个窗口,提示我们这个工作表禁止删除

    点下确定呢?

    0c47e5b4d8e62cc06017b233c884ae93.png

    不好意思,工作表被保护了,这个工作表你应该是删除不了了。所以只能结束程序了,重新调试删除的程序代码了。

    这样就间接了实现了对工作表的保护,禁止对方随意的删除你的工作表。

    代码分析

    今天我们的方法是强制在工作表被删除之前,将整个工作薄进行密码保护起来,这样就禁止了对方进一步删除我们的工作表,破坏了VBA删除代码的顺利进行,从而从侧面实现了禁止删除工作表的效果。

    我们来今天的代码

    其实知识点也是很简单,工作表的保护

    ActiveWorkbook.Protect "****"'*代表你要输入的密码

    7723696bcedeb0c7198caa8fedba8545.png

    实际上也就是通过给工作薄上锁的方式,来阻止VBA代码肆意的删除工作表,从而达到保护工作表的效果和目的

    虽然实现了效果,但是感觉方法并不是最优的,不知道小伙伴们还有没有更好的办法呢?

    展开全文
  • 首先看下图,注意,在相同的文件夹内,有一个工作薄的名称为“合并数据.xls”,其它的工作薄呢,有很多个,并且,有几个也不知道,我们姑且认为有X个其它的工作薄吧,并且,这些工作薄的名称也是没有任何规律的。...

    看着标题估计会有点乱,下面我们以图文的方式来和大家说明,本例子要实现的最终结果!

    首先看下图,注意,在相同的文件夹内,有一个工作薄的名称为“合并数据.xls”,其它的工作薄呢,有很多个,并且,有几个也不知道,我们姑且认为有X个其它的工作薄吧,并且,这些工作薄的名称也是没有任何规律的。

    8697e1d4368121b436eb89db2a646a14.gif

    现在,我们要做的就是,要把这X个工作薄中的Sheet1这个工作表里面的数据复制了之后,粘贴到“合并数据.xls”这个工作薄的相应的表里面。

    简单的说,就是要把工作薄1里面的Sheet1的内容粘贴到“合并数据.xls”中的一个工作表里面,同样,工作薄2里面的Sheet1的内容粘贴到“合并数据.xls”中的一个工作表里面,依此类推,工作薄3里面的Sheet1的内容粘贴到“合并数据.xls”中的一个工作表里面……,介绍只能介绍到这里了,如果你连这种逻辑关系都无法理解,那么说明,理解能力真的只适合学文科背诵,不适合学习VBA。

    好了,实现方法如下,把“合并数据.xls”工作薄打开,然后添加一个如下图的按钮控件,按钮控件的标签文字可自行修改。

    d81fe7550e2fc1883acd668c6f0565af.gif

    最后一步,就是添加VBA代码了,如下图,这是第一部分代码,是通用代码。

    0103bac1a13b90fa5f82ac72dc78843e.gif

    接着,就是功能代码了,如下图。

    522dbe0267261c1ce5b568fe0b32f5b9.gif

    上面的代码,添加到按钮控件上。相关的代码功能的解释,已在图上注明,在此就不再阐述了。

    最后,给大家说明的是,每次合并数据的时候,你把“合并数据.xls”打开,然后,只保留Sheet1这个工作表,其余的全部删除。这样才能正确使用,否则会导致代码错误。因为功能还未全部完善,只因本人没时间完善了。

    展开全文
  • 复制工作表,生成一个新工作薄。 获取当前活动工作薄,然后保存。(说实话,VBA这种思路很别扭。Copy竟然没返回值。) Sub Split2Book() Dim xPath As String xPath = Application.ActiveWorkbook.Path ...
  • 工作表的删除 Application. DisplayAlerts属性 示例 如图所示,该表为某公司在银行的余额汇总。现希望按照模板的格式生成若干张工作表,各工作表以银行名称作为表格名称,并将该银行信息填入表内。如何用V...
  • 案例01 批量新建并保存工作薄 举一反三 批量新建并关闭工作薄 案例02 批量打开一个文件夹下的所有工作薄 举一反三 列出文件夹下所有文件和子文件夹的名称 ...举一反三 批量打印多个工作薄中的指定工作表
  • 本代码示例用于批量删除第6, 7, 9, 10, 12, 13, 15, 16的代码,使用这个批量删除行的代码要注意以下几点:1)该代码只用于批量删除代码所在文件目录下(不含子目录)与 “*.xls*”后缀匹配的所有工作薄l所有工作表...
  • 示例 如图所示,在同一个目录下有多个工作表名称相同的工资汇总月报。现希望通过VBA建立该多个月份的月报总表,将多个工作簿中的“工资汇总”工作表导入当前工作簿,并以月份命名。该如何实现呢? ...
  • 多个excel表自动合并到同一表格,该段vba代码的逐句拆解
  • 问题提出:如何批量删除不需要的工作表? 解决方案:首先需要选定不能删除工作表,统计出个数,将其移至工作簿所有工作表的最前边,利用统计的个数设置循环操作,逐一删除未选定的工作表. 代码: Sub 批量删除工作表() Dim...
  • '将报表按指定列分类并保存到各工作表中 Dim i, c As Long, bj As String, rng As Range, arr(), myrows, lc As Integer Application.ScreenUpdating = False Application.DisplayAlerts = False myrows = ...
  • 使用VBA清空数据记录

    2022-05-03 21:13:57
    目的:在指定条件下,将一个工作薄中的某些工作表数据记录清空 代码实现: Sub 清除记录() Dim sht As Worksheet For Each sht In Worksheets If sht.Name <> "成绩表" Then '成绩表'中是保存元数据记录的...
  • 如何将多个总分结构的表,按照汇总上下合并,分表复制到工作簿的形式汇总
  • 输入以下运行代码,执行就(拆分的工作簿在你设置的路径下): Sub cfb() Dim m As Integer Dim sht, sht1 As Worksheet '按照需要将分出来的表分成多个工作簿 n = InputBox(“请输入excel的
  • 利用VBA开发数据汇总工具通常在日常工作中总会用到Excel并且经常会遇到Excel将多个表格进行汇总。经过工作中的实践,发现用VBA开发具有一定重复性的功能,能够极大提高工作效率。最近,将本人曾开发的的Excel数据...
  • VBA 提取批注实例 - Excel一键导入办公文章批注
  • 工作中,筛选条件肯定不止一个,有时候要筛选第一列,第二列,而不是某一个固定的列的条件 以上的ABCDEF列都有可能被当成筛选对象 代码如下 Sub chaifenshuju() Dim sht As Worksheet Dim k, i, j As Integer Dim irow ...
  • Excel在数据领域万物互联的特性,其中一个使用场景是连接非本工作薄的外部性文件内容,如其他Excel工作薄文件里的内容或直接用OLE对象的方式嵌入一个文件链接,使其在不离开Excel环境,也可提供类似快捷方式一样轻松...
  • 系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动...4.test04 隔m列()插入n列空白列() 5.test05 合并工作簿 6.test06 更改工作表名 7.test07 解除excel结构限制 8.test08 解除工
  • VBA笔记

    千次阅读 2020-05-15 08:46:27
    打开VBE即编写VBA的IDE的快捷键 ALT+ F11 提示代码 CTRL+j 在代码窗口VBA.会自动列出所有的函数 在VBE的帮助中输入对象模型就能看到对象的关系了 引用类型 $A$1 //绝对引用,复制公式时不改变单元格地址 ...
  • 批量操作的事情常常能让人感到十分畅快,区别于一次次的手工的操作,它真正实现了“人工智能”想要的效果,人指挥机器做事情,机器就可以按着人意去操作。此篇给大家再次送了批量操作一绝活,批量下载OUTLOOK上的...
  • VBA基础

    2020-07-04 10:41:08
    在Excel VBA中,指的就是:工作薄、工作表、单元格、图表、透视图。 属性: 指对象所具有的特性。 方法: 实际上就是对对象的操作,他是一种动作,一种行为。 变量: 在定义之后了还能再次赋值 格式: Di
  • 合并工作薄、工作表功能,几乎每一款Excel插件都提供,而且系列衍生功能甚至有多达10多个。今天Excel催化剂重拾武器,在现有众多插件没提供到位的部分场景中,给予支持和补充,做到人有我优,人无我有的境地,重新...
  • excel vba 数据分析

    千次阅读 2019-01-20 12:20:00
    VBA(Visual Basic for Application)是Microsoft Office系列软件的内置编程语言,其语法结构与Visual Basic编程语言互相兼容,采用的是面向对象的编程机制和可视化的编程环境。 第一节 标识符 一.定义 标识符是一...
  • 一个工作薄有多个相同类型的工作表,然后想通过批量操作,把每个工作表都另存为一个工作薄文件,这个批量拆分工作薄,绝大多数插件都有此功能,就如懂点VBA的高级用户也常常有点不屑于用插件来完成,自己写向行VBA...
  • Excel VBA对象2

    千次阅读 2016-11-27 23:57:04
    2. 怎样引用集合中的某个工作簿 法一:使用索引号引用工作簿 要引用Workbooks集合中的第3个Workbook,可以将代码写为: Workbooks.Item(3) 使用时可以省略属性名称Item,将代码写为: Workbooks(3) 法二:利用工作...
  • 有时批注内容写太长了,查看批注时没法显示所有内容,可用此功能将整个工作薄的所有批注都自动适应内容,让批注阅读起来更友好。 复原批注显示位置 批注有可能因为查看过程中,进行了排序、筛选等操作,最终批注...

空空如也

空空如也

1 2 3 4 5 ... 16
收藏数 308
精华内容 123
关键字:

vba批量工作薄删除指定行