我希望我的公式能够跟随目标细胞

美好的一天,

即使我在第20行之前插入了多行,我也希望此代码能够跟随目标单元格(G20)

=LEFT(G20,3)&TEXT(COUNTIF(G20:G20,LEFT(G20,1)&"*"),"000") 

谢谢,

是否也可以为单元格D20设置INDRECT代码?

 Private Sub CommandButton1_Click() Dim x As String, rcell As Range, y As String, z As Long x = "RFP" & Format(Now, "mmddyyhhmmss") y = Left(x, 10) z = Right(x, 2) For Each rcell In Range("D20:D" & Range("D" & Rows.Count).End(3).Row) If Cells(rcell.Row, 1) = "" Then Cells(rcell.Row, 1) = y & z z = z + 1 Next rcell End Sub 

尝试用2美元的标志围绕G20。 喜欢这个:

=LEFT($G$20,3)&TEXT(COUNTIF($G$20:$G$20,LEFT($G$20,1)&"*"),"000")

在这里阅读更多有关美元符号的信息:

https://blogs.office.com/en-us/2011/08/17/making-sense-of-dollar-signs-in-excel/一般来说它们确实很有用。

如果在插入上面的行之后总是希望公式参考Cell G20 ,则使用INDIRECT函数

 =LEFT(INDIRECT("G20"),3)&TEXT(COUNTIF(INDIRECT("G20:G20"),LEFT(INDIRECT("G20"),1)&"*"),"000") 

注意: INDIRECT是一个易失性函数。 详情请参阅此 。

尝试这个

 =LEFT($G$20,3)&TEXT(COUNTIF($G$20:$G$20,LEFT($G$20,1)&"*"),"000")