在制作宏方面我是新手,所以我迫切需要帮助。我有两张工作表,一张是每天都会用新数据更新的数据,另一张是一个模板,数据需要相应地按每一行填写。但是,模板需要是 A 列中唯一名称的副本,并用该名称重命名。如果模板工作表已经存在,它将从匹配的名称中获取信息并将某些信息复制到模板中。如果不存在工作表(模板),那么它将根据“A”列中的唯一值创建一个新工作表。
工作表(数据)中的数据首先需要从“I”列中的“赎回”和“完全清算”两种类型过滤,然后才能开始传输数据。
从工作表(数据)到工作表(模板),
“A”列将是新的工作表(模板)名称,
列“E”将被放入工作表(模板)列“A”中,从第 4 行开始,
“F”列将在“B”列中,
“B”列将在“C”列中,
“O”列将在“D”列中,
“L”列将在“T”列中。
到目前为止,我将它作为一个宏,但它不会复制模板,它需要整行而不是我需要的特定列。
Sub PagesByDescription()
Dim rRange As Range, rCell As Range
Dim wSheet As Worksheet
Dim wSheetStart As Worksheet
Dim strText As String
Set wSheetStart = ActiveSheet
wSheetStart.AutoFilterMode = False
'Set a range variable to the correct item column
Set rRange = Range("A1", Range("A65536").End(xlUp))
'Add a sheet called "UniqueList"
Worksheets.Add().Name = "UniqueList"
'Filter the Set range so only a unique list is created
With Worksheets("UniqueList")
rRange.AdvancedFilter xlFilterCopy, , _
Worksheets("UniqueList").Range("A1"), True
'Set a range variable to the unique list, less the heading.
Set rRange = .Range("A2", .Range("A65536").End(xlUp))
End With
On Error Resume Next
With wSheetStart
For Each rCell In rRange
strText = rCell
.Range("A1").AutoFilter 1, strText
Worksheets(strText).Delete
'Add a sheet named as content of rCell
Worksheets.Add("CLASS GROUPING ID").Name = strText
'Copy the visible filtered range _
(default of Copy Method) and leave hidden rows
.UsedRange.Copy Destination:=ActiveSheet.Range("A1")
ActiveSheet.Cells.Columns.AutoFit
Next rCell
End With
With wSheetStart
.AutoFilterMode = False
.Activate
End With
On Error GoTo 0
Application.DisplayAlerts = True
End Sub
请帮助我迫切需要一些指导