2015-11-22 84 views
1

我在單元格P2中應用了一些公式。我想申請相同的公式(如Ctrl + d)在該列P均細胞,直到我在C列如何在Excel VBA中選擇單元格?

Range("C1").Select 
Selection.End(xlDown).Select 
lastcell_number = ActiveCell.Row 
Range("P",lastcell_number).Select. 

它拋出錯誤所值。我如何選擇列P中的最後一列?

回答

3

如果公式已經在P2然後,

with worksheets("Sheet1") 
    .range(.cells(2, 3), .cells(rows.count, 3).end(xlup)).offset(0, 13).formula = _ 
     .range("P2").formula 
end with 

如果公式是不是已經在P2然後,

with worksheets("Sheet1") 
    .range(.cells(2, 3), .cells(rows.count, 3).end(xlup)).offset(0, 13).formula = _ 
     "=SUM(A2:O2)" '<~~put your own formula here 
end with 
+0

謝謝。有用, – Hideandseek

0

要選擇最後一個單元格總是從的底部上來而不是從頂部向下,這是因爲任何空白行都會成爲第一個停止向您提供虛假行號的地方。

lastcell_number = Range("C" & Rows.Count).End(xlup).row 

另外請注意,你不需要選擇它來找出它是什麼。通常情況下,您實際需要選擇內部代碼的情況非常少。

此:

Range("A1").select 
MyStr = Selection.text 
Range("B1").select 
Selection.Formula = MyStr 

可以寫成這樣:

MyStr = Range("A1").text 
Range("B1").Formula = MyStr 

假設你不需要myStr的其他地方在它的代碼,可再次凝結成這樣:

Range("B1").Formula = Range("A1").text