Excel宏:查找最后一行,添加今天日期,自动过滤,自动保存

时间:2013-10-08 14:36:57

标签: excel excel-vba vba

我有4个问题,关于我目前为我的工作写的一些excel宏。

1。我需要一个公式来查找文件的最后一行,所以每次运行时我都不必手动粘贴它。我目前有:

Selection.AutoFill Destination:=Range("K2:K148")
Range("K2:K148").Select

每次我必须手动输入K148。它不仅适用于该专栏。 所以我想要一个公式,保存最后一行的数量,我可以粘贴到它。比如“ROWS = actualnumberofrows”,以便我使用的那个看起来像这样:

每次我运行它。我目前有:

Selection.AutoFill Destination:=Range("K2:K(ROWS)")
Range("K2:K(ROWS)").Select

0.2。当我想将日期粘贴到我的excel表单中因为我的程序需要它时,它会以错误的格式粘贴它。继承我的公式:

Range("N2").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = Date
Selection.AutoFill Destination:=Range("N2:N148"), Type:=xlFillCopy
Range("N2:N148").Select

但它将其粘贴为年/月/日,我需要它作为年 - 月 - 日 我如何更改它以便自动执行此操作?

0.3。我没有这方面的功能,但是在此之后发生了自动过滤功能:

Rows("1:1").Select
Selection.AutoFilter
Columns("I:I").Select
Selection.NumberFormat = "General"

当我尝试在excel中记录自动过滤时,它会过滤我记录的行数。这与问题#1基本相关。

0.4。我目前使用此功能进行保存,但我遇到了问题:

Private Sub spara()


ActiveWorkbook.SaveAs Filename:= _
    "T:\Sweden\Routine leads\Adlantic+Euroads\MCM_" + ActiveWorkbook.Name _
    , FileFormat:=xlCSV, CreateBackup:=False
End Sub

它会自动保存,但我需要它保存;在其文件中。这有可能改变它以某种方式节省的方式吗?

1 个答案:

答案 0 :(得分:0)

以下是您的第一个问题的一些代码:

Sub dural()
    Dim r As Range, N As Long
    N = Cells(Rows.Count, "K").End(xlUp).Row
    Set r = Range("K2:K" & N)
    Selection.AutoFill Destination:=r
    r.Select
End Sub