excel - 在 VBA 脚本中按索引号引用表的正确语法是什么
问题描述
我正在尝试组合一个非常简单的 VBA 脚本来清除指定工作表中所有表格的指定表格列范围([Front Straddle]:[Front Option])内的单元格内容。该脚本仅存在于“VolJump”工作表中,该工作表包含任意数量的格式相同、名称不同的表。因此,我觉得最好的方法是通过索引号来引用这些表。
这是我在“范围”函数中遇到正确引用/嵌套问题的地方,如下所示。任何帮助是极大的赞赏。
Sub ClearCells()
Dim i As Long
Dim sh As Worksheet
Set sh = ThisWorkbook.Worksheets("VolJump")
If sh.ListObjects.Count > 0 Then
For i = 1 To sh.ListObjects.Count
Range("Activesheet.ListObjects(1)[[Front Straddle]:[Front Option]]").Select
Selection.ClearContents
Next i
End If
End Sub
解决方案
清除表格列范围的内容
Option Explicit
Sub ClearCells()
Dim ws As Worksheet: Set ws = ThisWorkbook.Worksheets("VolJump")
Dim tbl As ListObject
For Each tbl In ws.ListObjects
ws.Range(tbl.Name & "[[Front Straddle]:[Front Option]]").ClearContents
Next tbl
End Sub
推荐阅读
- c# - 提取谓词中的冗余
- c# - 如何在信号器路由的 url 中获取参数?
- ruby-on-rails - 提取所有具有特定单词的哈希键
- angular - Angular Material Datepicker:空日期的自定义字段文本
- ansible - ansible-galaxy 集合安装超时
- mysql - 将 column_id 替换为该 id 的 column_name
- delphi - 不通过主 DNS 时,TIdTCPClient 无法解析多个主机名
- javascript - Node.js - 从 http.get 中的函数访问 const
- asterisk - Asterisk 仅阻止来自特定国家的来电
- java - Java 嵌套循环中的时间复杂度和高斯和恒等式