我對 VBA 很陌生。任何幫助都將受到歡迎,因為我在這方面已經堅持了幾天。
我試圖基本上進行拖放并根據需要添加一行以使電??子表格整潔。
到目前為止,我已經設法做到這一點,但它只是不斷插入整行而不是向下移動。
這是一個動態條目,我不會總是有 2 或 3 個新行。有時會是 2 其他會是 100
ActiveSheet.Range("A15:AB15").Select
Selection.FillDown
Do Until ActiveCell.Value = 0
Selection.FillDown
ActiveCell.EntireRow.Insert
Loop
所以我需要回圈拖放我在上面一行中的一些公式,然后插入一個新的,再次拖放并繼續,直到它滿足值 0。
我希望解釋有所幫助。
提前致謝
uj5u.com熱心網友回復:
我將嘗試回答我認為您要問的問題,如果我誤解了,您可以提供澄清。假設您在作業簿中有以下兩個作業表。

作業表“資料”具有給定日期的庫存水平。該表的 B 到 D 列中的值從某個數字開始,隨著我們向下移動該列最終達到零。
在名為“摘要”的作業表上,您有一行公式參考值串列頂部的單元格,并且您希望向下復制該公式,直到每列中復制的公式的值等于 0。
這是一個 VBA 宏,可以做到這一點:
Sub copy_all_down_to_zero()
Dim cell As Range
For Each cell In Worksheets("Summary").Range("b2:d2")
copy_formula_down_to_zero cell
Next
End Sub
Sub copy_formula_down_to_zero(cell As Range)
Do Until cell.Value <= 0
' this line added in response to comment below
If Len(cell.Offset(1).Value) > 0 Then cell.Offset(1).EntireRow.Insert
cell.Offset(1).Formula2R1C1 = cell.Formula2R1C1
Set cell = cell.Offset(1)
Loop
End Sub
只需配置“copy_all_down_to_zero”以參考包含初始公式的范圍并運行它。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/455257.html
