簡體   English   中英

宏到自動向下填充到最后一個相鄰單元格

[英]Macro to Auto Fill Down to last adjacent cell

我試圖在Excel中使用宏錄制器來錄制一個宏來填充一列單元格,但是因為每次填充的是不同數量的單元格,它要么填充到短或太長,這似乎是因為macro標識單元格范圍及其固定。

無論如何,我可以把它填充到最后填充的相鄰單元格。 例如,自動填寫E列,直到它到達D列中最后一個填充的行。我在這里查看了一些示例,但代碼看起來都非常不同,所以不確定是否可以使用宏錄制器完成或者我必須讓某人寫一些代碼還是必須手動完成的?

這是我在宏中的代碼。

ActiveCell.FormulaR1C1 = _
        "=IF(MONTH(RC[-1])>3,"" ""&YEAR(RC[-1])&""-""&RIGHT(YEAR(RC[-1])+1,2),"" ""&YEAR(RC[-1])-1&""-""&RIGHT(YEAR(RC[-1]),2))"
    Selection.AutoFill Destination:=Range("E2:E1344")
    'Selection.AutoFill Destination:=Range("E2:E1344")
    Range("E2:E1344").Select

如果有人能幫忙我會非常感激

未經測試....但應該工作。

Dim lastrow as long

lastrow = range("D65000").end(xlup).Row

ActiveCell.FormulaR1C1 = _
        "=IF(MONTH(RC[-1])>3,"" ""&YEAR(RC[-1])&""-""&RIGHT(YEAR(RC[-1])+1,2),"" ""&YEAR(RC[-1])-1&""-""&RIGHT(YEAR(RC[-1]),2))"
    Selection.AutoFill Destination:=Range("E2:E" & lastrow)
    'Selection.AutoFill Destination:=Range("E2:E"& lastrow)
    Range("E2:E1344").Select

唯一的例外是你確定你的自動填充代碼是完美的...

此示例顯示如何根據A列中的數據量填充B列。根據需要調整“A1”。 它將根據B1中的公式填寫B列。

Range("A1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(0, 1).Select
Range(Selection, Selection.End(xlUp)).Select
Selection.FillDown
ActiveCell.Offset(0, -1).Select
Selection.End(xlDown).Select
ActiveCell.Offset(0, 1).Select
Range(Selection, Selection.End(xlUp)).Select
Selection.FillDown

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM