[英]Change starting point row
有一個我要根據另一個工作表上的輸入量進行修改的表格。 無法獲取下面的代碼。 我是VBA新手,所以可能很簡單。 不確定我的“ Dim”和“ Set”命令是否正確,因為我收到“ startrow1”的“ Object Required”錯誤。
代碼應添加可變數量的行(這樣做)。 但是問題是出發點。 “默認”起始點將為“ A20”,但是需要根據先前在其上方添加的帶有另一個宏的行數進行更改。 (ws1.Range。( “D45”)。值)。 因此,如果“ D45”為2,則起點應更改為“ A22”。
Sub Addquotedrows()
Application.ScreenUpdating = False
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim addquoted As Range
Dim startrow As Range
Dim startrow1 As Range
Set ws1 = Sheets("Input")
Set ws2 = Sheets("PakEmail")
Set addquoted = ws1.Range("D46")
Set startrow = ws2.Range("a20")
Set startrow1 = startrow + ws1.Range("D45").Value
Let X = 0
Do While X < addquoted
With ws2
startrow1.EntireRow.Insert Shift:=xlUp
End With
X = X + 1
Loop
Application.ScreenUpdating = True
End Sub
僅用 D45中的行數偏移起始行。
Set startrow = ws2.Range("a20").offset(ws1.Range("D45").Value, 0)
使用您擁有的代碼,您需要將startrow設置為整數,然后進行加法,並將startrow1 =的范圍設置為如下所示的值:
Dim startrow Integer
Set startrow = 20
Set startrow1 = Range("A" & startrow +
ws1.Range("D45").Value
您的問題是,您正在向范圍中添加一個整數,就像在一個大城市的中間,並說您正在尋找地址9。錯誤消息是:“好,那9是什么?” 那有意義嗎?
所以現在您有2個選擇。 1)使用具有偏移量的上述地址2)使用此處顯示的數字。 哪一種都能滿足您的需求,取決於您的樣式,什么對您有意義,以及如果使用另一種方式可能會絆倒其他代碼。 (這種可能性很小,但仍然是可能的)。
祝好運!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.