嗨新手(非常新)在这里, 我有12张(月)的可变数据。每张纸都显示了该月的客户支出,我需要以某种方式将每个客户整理到一张纸上。
通常我会在excel中使用像vlookup公式这样简单的东西,但由于新客户可能在一年中加入,我需要一种不同的方式来对这些信息进行排序。正如我通常使用帐户代码作为我的vlookup源。
所以我相信我需要使用VBA,但很难找到甚至可以从这样的事情开始。
任何帮助将不胜感激。
我认为最好的方法是将每个月复制到一张主表上,然后从那里开始。如果是这样的话,我想我需要找到活动工作表中的行数,然后将它们复制到主工作表中,但不要过度写入我已经复制过的内容。
有人能指出我正确的方向吗?
JA
答案 0 :(得分:0)
您可以使用以下代码在任何工作表中找到第一个空行:
Dim ws As Worksheet : Set ws = ThisWorkbook.Worksheets("SheetName")
Dim firstEmptyRow
' Get the first empty row in column "A" by finding the last used row and adding 1.
firstEmptyRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row + 1
ws.Range("A" & firstEmptyRow).Value = "Whatever you want to put in the first empty row"
答案 1 :(得分:0)
理想情况下,您将提供测试存根和您希望实现的结果的草稿。但我仍然可以让你开始。
我对数据的形状一无所知。但这是一个很好的起点。
Sub CombineWorksheets()
Dim lastRow As Long, r As Range
Dim ws As Worksheet
Dim wbNew As Workbook
Set wbNew = Workbooks.Add
For Each ws In ThisWorkbook.Worksheets
Set r = ws.UsedRange
lastRow = lastRow + r.Rows.Count + 5
wbNew.Worksheets(1).Cells(lastRow - 2, 1) = ws.Name
r.Copy Destination:=wbNew.Worksheets(1).Cells(lastRow, 1)
Next
End Sub