我正在尝试编写一个可以执行多项操作的脚本。我使用宏来完成基础知识,但我正在尝试为其余部分找到代码。我有一个包含15列和多行的工作表(此工作表由另一个程序生成,每次运行时都会更改)。我必须经历它并删除某些东西。我需要一个
的脚本我有所有操作的代码,我只需要获取max(上面的步骤8)和日期(上面的步骤12)的弹出对话框。我使用了5种不同的脚本。第一个是开头的格式化步骤(1-4)。第二个进行“U”搜索(5-6)。第三个是Max搜索(7-9),第四个是最终搜索(10-12)。第五个在第二张(13)上进行清理。
我假设当我收到对话框时,我会将对话框中给出的答案分配给变量,并在代码中使用它?我该怎么办呢?
答案 0 :(得分:1)
你在这里要求很多步骤,我的建议是打破你的代码。你有13个不同的东西,你打算做我会单独写每个。它根据您的代码向我看,您正在使用宏录制器来获得所需的结果,然后反向设计宏录制器为您生成的内容和VBA。
所以这是一个快速的步骤,可以让你前进。
我会创建一个主类
Sub Main()
call Macro4()
End Sub
Sub Macro4()
'
' Macro4 Macro
'
'
'Delete Row 2
Rows("2:2").Select
Selection.Delete Shift:=xlUp
Range("N6").Select
'Show full dates
Columns("N:N").EntireColumn.AutoFit
'Engage Autofilter
Selection.AutoFilter
'Make the Account Number format 5 digits
Columns("D:D").Select
Selection.NumberFormat = "00000"
'Show All in Column O (single status) to be deleted
ActiveWorkbook.Worksheets("50100").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("50100").AutoFilter.Sort.SortFields.Add Key:=Range( _
"O1:O4222"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("50100").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("O5").Select
ActiveSheet.Range("$A$1:$O$10000").AutoFilter Field:=15, Criteria1:="=U", _
Operator:=xlOr, Criteria2:="="
End Sub
为了帮助你更多我需要你的标签名称,你可以发一份副本,明天我会看。