精华内容
下载资源
问答
  • 我需要选中比如A2开始到最右下角那个单元格 应该可以用range().delete 但是不知道如何表达最右下角那个单元格 另外 需要批量操作10张表的话 ,如何写? 比如 删除表1-表10的A2开始到最右下角单元格区域的全部内容
  • Excel VBA 删除 表格中的图片

    千次阅读 2021-01-19 09:18:50
    在excel中建立了一个模板,希望大家使用完成后,里面的数值进行初始化, 那么,就需要将其中的文字、文本框、图片进行删除 Sub DeletePic() ...在删除图片后,我又想制定某些的区域代码,那么如何进行修改?

    在excel中建立了一个模板,希望大家使用完成后,里面的数值进行初始化,
    那么,就需要将其中的文字、文本框、图片进行删除

    Sub DeletePic()
        Dim p As Shape
        For Each p In Sheet1.Shapes
            If p.Type = 13 Then
                p.Delete
            End If
        Next
    End Sub
    

    代码中的type可以参考如下,
    在这里插入图片描述
    在删除图片后,我又想制定某些的区域代码,那么如何进行修改?

    需要定义一个函数:Del_Picture_By_Rng ()

    Del_Picture_By_Rng [G2:G10000] ‘’’’’’’'删除G2到G1000区域内的图片 其他区域不受影响。

    Sub Del_Picture_By_Rng (rng As Range)'删除指定单元格区域内的图片
    	Dim i As Integer, shps
    	Set shps = rng.Worksheet.Shapes
    	For i = shps.Count To 1 Step -1 '倒序循环图片
    		If Not Intersect(shps(i).TopLeftCell, rng) Is Nothing Then '检测到图片位置与本区域重叠 则删除
    			shps(i).Delete
    		End If
    	Next i
    End Sub
    
    使用方法
    
    Del_Picture_By_Rng [G2:G10000] '删除G2G1000区域内的图片 其他区域不受影响
    
    展开全文
  • B8:S200是需要清空的区域) <code>Worksheets("sheet1").Range("B8:S200").Clear Worksheets("sheet1").Range("B8:S200").ClearContents</code></pre> <code>Dim rng As ...
  • Selection.Range.ListFormat.RemoveNumbers
    Selection.Range.ListFormat.RemoveNumbers

     

    展开全文
  • VBA获取数据区域的行列数

    千次阅读 2020-10-20 22:12:40
    VBA获取数据区域的行列数方法1方法2 方法1 ActiveSheet.UsedRange.Rows.Count ActiveSheet.UsedRange.Columns.Count 缺点:有时可能会比实际数大一些,原因是如果你把最后几行(列) 数据 清除后(非整行或整列...

    VBA获取数据区域的行列数

    方法1

    ActiveSheet.UsedRange.Rows.Count   
    ActiveSheet.UsedRange.Columns.Count
    

    缺点:把最后几行(列) 数据 清除后(非整行或整列删除),用这个命令仍返回未清除前的值。

    方法2

    ActiveSheet.Range("A65535").End(xlUp).Row
    ActiveSheet.Range("IV1").End(xlToLeft).Column
    

    缺点:只能计算出一列(行)的最后一个 单元格 所在的行(列)数。本例返回第一列(行)的行(列)数。

    展开全文
  • vba 用代码删除控件 介绍 (Introduction) 在回答VB经典区域中a recent question in the VB classic zone, I wrote some VB code in the (Office) VBA environment, rather than fire up my older PC. I didn't post ...

    vba 用代码删除控件

    介绍 (Introduction)

    在回答VB经典区域中 a recent question in the VB classic zone, I wrote some VB code in the (Office) VBA environment, rather than fire up my older PC.  I didn't post completely correct code on my first attempt.  This is a quick tip about simulating VB classic controls in the VBA code environment. 的最新问题时,我在(Office)VBA环境中编写了一些VB代码,而不是启动我的旧PC。 我第一次尝试时并没有发布完全正确的代码。 这是有关在VBA代码环境中模拟VB经典控件的快速提示。

    第一次尝试不起作用 (First Attempt Does Not Work)

    要回答(文本框按键事件)问题,我需要访问文本框控件的text和selstart属性。 我在属性的模块的“常规声明”部分中添加了几个变量。 我在立即窗口中设置变量,并获得以下代码以返回正确的答案。
    Option Explicit
    
    Public SelStart As Long
    Public Text18 As String
    
    
    Private Sub Text18_KeyPress(KeyAscii As Integer)
        Dim strParsed() As String
        Dim strPostKeyValue As String
        If SelStart = 0 Then
            strPostKeyValue = Chr(KeyAscii) & Text18
        Else
            strPostKeyValue = Left$(Text18, SelStart) & Chr(KeyAscii) & Mid$(Text18, SelStart + 1)
        End If
        strParsed = Split(strPostKeyValue, "x", , vbTextCompare)
        If (UBound(strParsed) >= 0) And (UBound(strParsed) < 2) Then
            If IsNumeric(strParsed(LBound(strParsed))) And (IsNumeric(strParsed(UBound(strParsed))) Or Len(strParsed(UBound(strParsed))) = 0) Then
            Else
                KeyAscii = 0
            End If
        Else
            If IsNumeric(Chr(KeyAscii)) Then
            Else
                KeyAscii = 0
            End If
        End If
    
    End Sub
    

    Note: The feedback I received was "It doesn't work."  Unfortunately, the questioner didn't have an Option Explicit statement or my mistakes would have been caught immediately.

    注意:我收到的反馈是“它不起作用”。 不幸的是,发问者没有Option Explicit声明,否则我的错误马上就会被发现。

    模拟文本框属性 (Simulating the Textbox Properties)

    此仅代码模拟的解决方案是为文本框属性创建一个结构。 这是通过Type…End Type语句完成的,如下所示。
    Option Explicit
    
    Type TextBoxProperties_struc
        Text As String
        SelStart As Long
        SelLength As Long
    End Type
    
    Public Text18 As TextBoxProperties_struc
    
    
    Public Sub Text18_KeyPress(KeyAscii As Integer)
        Dim strParsed() As String
        Dim strPostKeyValue As String
        If Text18.SelStart = 0 Then
            strPostKeyValue = Chr(KeyAscii) & Text18.Text
        Else
            strPostKeyValue = Left$(Text18.Text, Text18.SelStart) & Chr(KeyAscii) & Mid$(Text18.Text, Text18.SelStart + 1)
        End If
        strParsed = Split(strPostKeyValue, "x", , vbTextCompare)
        If (UBound(strParsed) >= 0) And (UBound(strParsed) < 2) Then
            If IsNumeric(strParsed(LBound(strParsed))) And (IsNumeric(strParsed(UBound(strParsed))) Or Len(strParsed(UBound(strParsed))) = 0) Then
            Else
                KeyAscii = 0
            End If
        Else
            If IsNumeric(Chr(KeyAscii)) Then
            Else
                KeyAscii = 0
            End If
        End If
    
    End Sub
    

    Now, the compiler catches all the syntax errors.  It does prevent me from using the default property, but that is a small price to pay for the convenience of answering such VB classic form/control related questions in the VBA environment.

    现在,编译器捕获了所有语法错误。 它的确阻止了我使用默认属性,但这只是为了在VBA环境中回答此类与VB经典表格/控件相关的问题而付出的便利而付出的小钱。

    For more complicated control properties, you might need to create a class or create a user form with the particular type of control you need.  

    对于更复杂的控件属性,您可能需要使用所需的特定控件类型创建一个类或创建一个用户窗体。

    Note: User form controls aren't the same as VB classic controls.  Sometimes they have different properties and methods.

    注意:用户表单控件与VB经典控件不同。 有时它们具有不同的属性和方法。

    =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

    =-=-=-=-=-=-=-=-=-=-=-=-=- =-=-=-=-=- =-=-=-=-=- =-=-=-=-=- =-=-=-=-=- =-=-=-=-=- =-=-=

    If you liked this article and want to see more from this author,  please click here.

    如果您喜欢本文,并希望从该作者那里获得更多信息, 请单击此处

    If you found this article helpful, please click the Yes button near the:

    如果您认为这篇文章对您有所帮助 ,请单击以下位置旁边的“

          Was this article helpful?

    本文是否有帮助?

    label that is just below and to the right of this text.   Thanks!

    此文字下方和右侧的标签。

    =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

    =-=-=-=-=-=-=-=-=-=-=-=-=- =-=-=-=-=- =-=-=-=-=- =-=-=-=-=- =-=-=-=-=- =-=-=-=-=- =-=-=

    翻译自: https://www.experts-exchange.com/articles/8352/Simulating-VB-Controls-in-VBA-Code.html

    vba 用代码删除控件

    展开全文
  • 二、解决方案:同样的还是要用VBA来解决,操作前面已经介绍过了,我们直接上代码和注释(!!!在这里需要强调一下:在运行代码前要选中需要删除的部分,比如A-F——1-2000,上下左后都要选,不能全选。由于程序会对...
  • 有同学问:能不能使用union函数将符合条件的单元格所在行全部选中,然后删除. 如下图:删除黄色底纹的标题行 为此,给出代码如下: Sub test() Dim arr, myrow As String Dim cc As Variant, ran As Range r = Sheet...
  • Excel VBA删除行、列或单元格

    千次阅读 2020-07-21 01:59:16
    删除指定的对象。 expression.Delete 表达式 必需。该表达式返回上述对象之一。 应用于 Range 对象的 Delete 方法。 删除指定的对象。 expression.Delete(Shift) 表达式 必需。该表达式返回上述对象之一。...
  • VBA-删除工作表中的空行

    千次阅读 2020-02-24 22:37:19
    删除工作表中的空行 若在表格中存在一部分空行,可以使用如下代码进行剔除; '未知数据的首行末行数 Sub 删除空行() Dim a As Integer Dim b As Integer Dim i As Integer a = Sheet1.UsedRange.Row b = a + ...
  • EXCEL VBA 导出高清图片方法

    千次阅读 2020-02-17 09:59:50
    EXCEL VBA 导出高清图片方法 将EXCEL表格内容另存为图片的方法有很多种,简单的比如“复制为图片格式并另存”,“打印成XPS”等等,本文着重的是利用VBA实现的方法。 该方法适合用于中大型图文表格输出为图片格式...
  • 此cad插件vba格式,可批量删除dwg的指定图层,需批量删除图层的dwg与指定的图层txt放同一文件夹内,运行插件选中该文件夹即可批量删除指定图层
  • 在Excel中有一个很隐蔽的功能,就是为某一个或某一片区域进行命名操作,手动操作如下:例如我们选中A1:C5这个区域,然后在编辑框的最左侧的“名称框”中直接输入“R_001”回车,那么就完成了对A1:C5这个区域的命名...
  • Range(“A1:D4”).CopyRange(“E5”) Range.Delete 方法 删除对象 RANGE(“A1:D5,F2:G2”).delete 同时删除A1:D5,F2:G2,两个指定区域 Range(“1:1,8:8,12:12”).delete 同时删除第1,第8,第12行 Range.Insert 方法...
  • 如题,预计打算把黄色标示的行全部一齐删除。 如果数据比较大达到几十万行的话,循环寻找A列为空则比较低效。 若用SpecialCells函数把空白单元格全部找到而且选中,则不需要循环,速度较快。 Sub Test () dim blk, ...
  • VBA删除如下内容,解决思路都不同 删除1列的空行(本文要做的) 删除整个区域内的空行 删除整个区域内的空格(这个一般很少有这种需求,用处不大----可用currentregion .specialcells()解决) 下...
  • 1.点击【开始】->【查找和选择】->【选择对象】2.用鼠标左键圈定范围,可选择该区域内所有对象3.按delete键即可删除所选中区域内对象
  • 源数据及要求:删除黄忠和庞统的各一行重复数据,两个孙权因为班级不同,保留 数据结果展示: 代码解析: Sub DeleteSameRow1() '删除所有重复行,保留唯一值 Dim LastRow As Long Dim i, k, n As Long ...
  • 工作表单元格区域另存为图片

    千次阅读 2019-04-25 00:14:56
    实例需求:工作表中的表格内容(A1:C8)另存为图片。 这个很难吗?确实不难。一定要用VBA吗?不一定呦。先来看看如下操作,在工作表中选中相应的单元格区域,依次点击【开始】选项卡的【复制】下拉按钮->【复制...
  • 今天跟大家分享一下Excel如何快速删除指定区域0值 1.打开要处理的Excel文件 2.选中要删除0值得单元格区域(本文这里删除全部0值) 3.然后点击【AudTool】(Excel工具箱,百度即可了解详细下载...
  • 目录 示例: 实现代码1: 单元格删除Delete方法 ...现在需要做统计,希望能够将这些空行批量删除,该如何用VBA实现? 日期/时间 产品 数量 2012/10/29 产品1 83 2012/10/30 产品1 184 ..
  • i定位合并区域最下面一个单元格,j定位合并区域最上面一个单元格。 这就决定了,对i我们用For语句遍历每一行,如果不为空,则给j赋值 i=j,如果为空就合并从Ij到Ii的单元格。 语句如下: For i = 20 To 31...
  • VBA图片的出空白解决方法

    千次阅读 2018-01-15 17:25:27
    Sub 导出为图片() Dim f$ f = "D\DRdlb.JPG" If Dir(f) <> "" Then Kill f Sheets("sheet1").Select Range("A1:Q87").Select Selection.Copy Selection.CopyPicture '选区复制为图片 With A
  • 在word中经常需要操作特定位置的文本内容,定位文本内容就显得尤为重要。 在word vba中Range、Selection 对象有多种移动、定位、选择文本内容的方法和属性。 在这些方法和属性中,有两类枚举常量是经常要用到的,...
  • Sub 添加图片备注() Dim rng As Range For Each rng In Selection picph = ThisWorkbook.Path & "/图片/" & rng.Value & ".jpg" On Error Resume Next rng.ClearComments With rng.AddComment.Shape...
  • 函数作用:将选择定单元格作成镜像图片.............103 '105.函数作用:反选择单元格中的数.....................105 '106.函数作用:在Excel中加入一个量度尺(以厘米为单位).106 '107.函数作用:在Excel中加入一个量度...
  • 很多人忙于工作,疲于工作,烦于工作,不知道VBA是一道独特的风景,需要你的欣赏,需要你用心去开发。在我20多年的VBA实践中,越来越感到此处风景独到,此处风景独好,希望大家利用VBA,开垦VBA,让代码为你服务。我...
  • 1 Dim Volume 2 Private Sub Worksheet_Change(ByVal Target As Range) 3 Dim Ran1 As Range, Ran2 As Range, UnionRan As Range 4 Set Ran1 = Sheets(" ").Range(" ") 5 Set Ran2...
  • vba 删除指定range

    千次阅读 2011-04-07 20:16:00
     Sub DeleteCellRowColumn()  '删除活动单元格,下方单元格上移  ActiveCell.Delete Shift:=xlUp  '删除选定的区域,右方单元格左移  Selection.Delete Shift:=xlToLeft  ' ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,170
精华内容 868
关键字:

vba删除指定区域的图片