excel - VBA:由固定单元格和活动单元格定义的范围
问题描述
我正在尝试使用宏将数据格式化为表格。无论占用的行数和列数如何,它都需要工作,
我尝试了以下方法,导致错误:
Sub Macro1()
Set **selectedCell** = Application.ActiveCell
Range(Selection, Selection.End(xlUp)).Select
Range(Selection, Selection.End(xlToLeft)).Select
Application.CutCopyMode = False
ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1:**selectedCell**"), , xlYes).Name = _
"Table1"
Range("Table1[#All]").Select
ActiveSheet.ListObjects("Table1").TableStyle = "TableStyleLight8"
Cells.Select
End Sub
任何想法如何解决这一问题?
提前致谢。
解决方案
您无需在代码中进行选择
您可以使用CurrentRegion
-ActiveCell
它已经返回一个范围 - 所以不需要像 Nathan_sav 建议的那样使用地址。
此外ListObjects.Add
返回一个ListObject
- 您可以使用它来设置其他属性。
Dim lo As ListObject
Set lo = ActiveSheet.ListObjects.Add(xlSrcRange, ActiveCell.CurrentRegion, , xlYes)
With lo
.Name = "Table1"
.TableStyle = "TableStyleLight8"
End With
推荐阅读
- c# - 具有基于列表的属性的 C# 相等性
- javascript - 如果 URL 包含字符串 A 但不包含字符串 B,则重定向
- iis-6 - IIS:服务没有及时响应启动或控制请求。(2147943453, 8007041d)
- penetration-testing - 使用 burp 套件的 Web 应用程序
- javascript - cordova ios iphone x - 顶部0的固定元素不显示在最顶部
- python - 如何对在 __init__ 方法之外初始化的实例变量进行单元测试
- r - 基于包含 tidyverse 类别的其他两列创建新变量
- powershell - 如何查询不同域中的 AD 用户
- jpos - 在 jboss 中部署 jPOS 或在 jboss 中启动 jPOS Q2
- react-native - 我想在本机反应中调用 Object-C 方法