我在Excel中有一个表,其中包含与某些数据相关联的名称列表。我希望能够创建新行(使用类似形式的数据)并将它们排序到现有行中。
我真的不知道如何在Excel中编码VBA,也找不到任何根据其数据插入行的示例。大多数示例都插入新的空白行来设置表格样式。
我已经用用户的输入值插入新行:
Sub Test_Function()
Dim val As String
val = InputBox("Enter your name", "May I know your Name!")
'Inserting a Row at at Row 2
Range("A3").EntireRow.Insert
Range("A3").Formula = val
'
End Sub
更多信息:数据在此布局中:名称-提供的货币W1-提供的货币W2-饮料W1-饮料W2-欠款总额
输入新名称时,该行需要像其他行一样复制公式。表格的底部是另一行,其中“已提供的钱”和“所欠的钱”之和。(我想因此我不能只是将其添加到最后一行,而是插入一个新的,不确定是否...)
我不会插入新行,而是将插入结果放在工作表的末尾:
lastRow = Range("A1").End(xlDown).Row + 1
Range("A" & lastRow) = data1
Range("B" & lastRow) = data2 'etc.
然后按您喜欢的键对整个工作表进行排序(此示例用于按A列-记录的宏按降序对AC进行排序):
Columns("A:C").Select
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("A1:A" & lastRow), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SetRange Range("A1:C" & lastRow)
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句