我正在制作个人月度财务的Excel电子表格。我的问题是你可以创建一个ActiveX按钮,在按下时会在表格的底部添加一个固定的行吗?
表格如下:
Date Description Amount Account
10/2/2017 Rent $440.00 Checking(NF)
10/3/2017 Groceries Checking(TD)
10/3/2017 Transfer $140.00 Checking(NF)
10/3/2017 Transfer ($140.00) Credit Card(NF)
我想添加一个固定的行:
=TODAY() Rent $440.00 Checking(NF)
位于上表的底部。
感谢。
答案 0 :(得分:1)
使用以下代码。您可以使用数据透视表向工作表添加一个命令按钮,并将该按钮与以下代码关联:
Sub FindTableLastRow()
Dim wb As Workbook
Dim ws As Worksheet
Dim tbl As ListObject
Dim lRow As Long
Dim startCol As String * 1
Dim AddressArr() As String
Set wb = ThisWorkbook
Set ws = wb.Sheets(2) 'Adjust this to your sheet name with the table in.
Set tbl = ws.ListObjects("Table1") 'Adjust to your table name
AddressArr = Split(tbl.Range.Address, "$")
startCol = AddressArr(1)
lRow = AddressArr(4)
ws.Cells(lRow + 1, startCol).FormulaR1C1 = Format(Date, "\ dd\/mm\/yyyy\")
ws.Cells(lRow + 1, startCol).Offset(0, 1).Value = "Rent"
ws.Cells(lRow + 1, startCol).Offset(0, 2).Value = "$440.00"
ws.Cells(lRow + 1, startCol).Offset(0, 3).Value = "Checking(NF)"
End Sub
它会返回Date的字符串,因此当您在Date列上从最旧到最新排序时,它也将显示在数据透视的最后。