首页 > 其他分享 >vba-对插入的表格进行操作

vba-对插入的表格进行操作

时间:2022-12-03 19:48:25浏览次数:56  
标签:Count vba End Sub 表格 ByVal 插入 ListRows tb

Sub 新增行(ByVal tabName As String)

    On Error Resume Next
    Set tb = ActiveSheet.ListObjects(tabName)
    
    If tb.ListRows.Count > 0 Then
        tb.ListRows.Add (tb.ListRows.Count + 1)
    Else
        tb.ListRows.Add (1)
    End If
    
End Sub


Sub 插入行(ByVal tabName As String, ByVal beginRow As Integer)

    Set tb = ActiveSheet.ListObjects(tabName)
    
    Debug.Print tb.ListRows.Count '立即窗口显示
     If tb.ListRows.Count = 0 Then
         tb.ListRows.Add (1)
    Else
        If (Selection.Row > tb.ListRows.Count + beginRow Or Selection.Row <= beginRow) Then
            MsgBox "请选中表格所在的行"
        Else
             tb.ListRows.Add (Selection.Row - beginRow)
        End If
    
    End If
   
    
End Sub





Sub 删除选中的行(ByVal tabName As String, ByVal beginRow As Integer)
    On Error Resume Next

    Set tb = ActiveSheet.ListObjects(tabName)
    
     If tb.ListRows.Count = 1 Then
          tb.ListRows.Add (1)
          tb.ListRows(2).Delete
     Else

        If (Selection.Row > tb.Range.Rows.Count + beginRow - 2 Or Selection.Row <= beginRow) Then
            MsgBox "请选中表格所在的行"
        Else
            tb.ListRows(Selection.Row - beginRow).Delete
        End If
    
    End If
    
    
End Sub



Sub 删除所有行(ByVal tabName As String)
 
Set tbl = ActiveSheet.ListObjects(tabName)

If tbl.ListRows.Count > 1 Then
    'Delete all table rows except first row
      With tbl.DataBodyRange
        If .Rows.Count > 1 Then
          .Offset(1, 0).Resize(.Rows.Count - 1, .Columns.Count).Rows.Delete
          
        Else
          
        End If
      End With
      
Else
    If tbl.ListRows.Count = 1 Then
        tbl.ListRows(1).Delete
    End If
End If

If tbl.ListRows.Count = 1 Then
    tbl.ListRows(1).Delete
End If

End Sub

 



Sub 打印()

    ActiveWindow.SelectedSheets.PrintOut Copies:=1
    
End Sub

 
Sub 删除单(ByVal sheetname As String, ByVal tabName As String, ByVal orderNo As String)

    Set tb = Sheets(sheetname).ListObjects(tabName)
    
    
    If tb.ListRows.Count = 1 Then
      If tb.DataBodyRange(1, 2).Value = orderNo Then
         tb.ListRows(1).Delete
      End If
    Else
    
         x = 1
        Do While x <= tb.ListRows.Count
            If tb.DataBodyRange(x, 2).Value = orderNo Then
                 tb.ListRows(x).Delete
            Else
                 x = x + 1
            End If
        Loop
    
    End If
  
    If tb.ListRows.Count = 1 Then
      If tb.DataBodyRange(1, 2).Value = orderNo Then
         tb.ListRows(1).Delete
      End If
    End If
End Sub







Sub 保存()

   ActiveWorkbook.Save
    
End Sub

--对插入的表格重命名

 

 

标签:Count,vba,End,Sub,表格,ByVal,插入,ListRows,tb
From: https://www.cnblogs.com/Insist-Y/p/16948598.html

相关文章

  • TP5导出EXCEL表格(附带样式修改)
    下载好TP框架http://packagist.p2hp.com/ 搜索phpexcel框架根目录composerrequirephpoffice/phpexcel下载excle包  $objExcel=new\PHPExcel;$objWriter......
  • Kettle增量插入和更新
    将数据源A库中的某张表的数据插入更新到数据库B中。​为方便演示,我们在数据库A和数据库B中分别创建表userA和表userB。最终目标为将数据表userA中的数据插入更新到数据表use......
  • js-day05-综合案例表格
     <script>    //定义一个存储了若干学生信息的数组    letstudents=[      {name:'小明',age:18,gender:'男',hometown:'河......
  • SQLServer中批量插入数据方式的性能对比
    昨天下午快下班的时候,无意中听到公司两位同事在探讨批量向数据库插入数据的性能优化问题,顿时来了兴趣,把自己的想法向两位同事说了一下,于是有了本文。公司技术背景:数......
  • ASP.NET 向SQLSERVER中批量插入数据
    usingSystem.Data;usingSystem.Diagnostics;usingSystem.Data.SqlClient;stringconnectionString="DataSource=HG-J3EJJ9LSW5PY;InitialCatalog=Test......
  • C#中数据的批量插入和更新_Asp.net
    对于海量数据的插入和更新,ADO.NET确实不如JDBC做到好,JDBC有统一的模型来进行批操作.使用起来非常方便: PreparedStatementps=conn.prepareStatement("insertorupd......
  • golang的插入排序算法
    1、什么是插入排序?先看一个例子:{7,6,1,9,3}无序数列中,我们约定好无序数列的第一个元素7作为有序数列{7},然后分别对{6,1,9,3}的数与7进行比较移位得到新的有序数列。第一次迭......
  • 【问题】Unknown return value type: java.lang.Integer springboot插入数据 报错
    很诡异的事情发生了。。。。。。。在使用springboot搭建一个springboot整合mybatis的demo时,测试插入数据的方法,数据成功插入数据库了,但是控制台却报了这个错,提示为止返回类......
  • js滚动指定的距离,实现表格内定位
    使用scrollIntoview会滚动整个页面。使用原生的scrollTo方法来代替。letitem=document.getElementById("item");//指定的元素letwrapper=document.getElementB......
  • POI插入行,合并行的单元格
    1、POI插入行,合并行的单元格2、代码/** * *@Title:insertRow *@Description:TODO插入行 *@paramsheet *@paraminsertRowIndex *@Author:......