我有一个工作子例程,它将一个值插入一个单元格,作为表格新行的一部分。我引用单元格以按列号插入数据。但是,我希望能够使用表中的列/标题名称,而不是数字,以便可以移动表列而不会破坏宏中的单元格引用。有谁知道怎么做?
这是我的示例代码。
Sub InsertValue(ByRef iTargetCell As Integer, ByRef CellData As String, ByRef strType As String)
Select Case strType
' Define the data as Text
Case "T"
' Specify the number format to be used for a particular column in the new row
NewRow.Range.Cells(1, iTargetCell).NumberFormat = "@"
' Insert the data for a particular column into the new row
NewRow.Range.Cells(1, iTargetCell).Value = CellData
' Define the data as a number
Case "N"
NewRow.Range.Cells(1, iTargetCell).NumberFormat = "0"
NewRow.Range.Cells(1, iTargetCell).Value = CellData
End Select
End Sub
变量NewRow已经公开定义。
Public NewRow As ListRow
它设置在另一个子程序中。
Set NewRow = Range(strTableName).ListObject.ListRows.Add(AlwaysInsert:=True)
答案 0 :(得分:1)
ActiveSheet.ListObjects("Table1").ListColumns("ColName").Index
将返回带有标题" ColName"的列的位置。在表格中