-1
我有一個VBA代碼,你可以看到下面,我記錄它。在錄製它時,它會以偏移量格式編寫公式。所以我不知道如何更改範圍我需要重新格式化我的Vlookup公式excel
如何轉換; R3C[-3]:R[1488]C[2]
這通常是B$3:G1489
到:
B $ 3:(列 「G」 最後一個活動單元格)
我怎麼能這樣做?
Sub duzenle()
Columns("E:E").Select
Selection.Copy
Range("L1").Select
ActiveSheet.Paste
Range("E12").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = _
"=IFERROR(VLOOKUP(RC[-3],C.A.!R3C[-3]:R[1488]C[2],4,0),IF(ISBLANK('2017'!RC[7]),"""",'2017'!RC[7]))"
Range("E12").Select
Selection.AutoFill Destination:=Range(ActiveCell, ActiveCell.End(xlDown)), Type:=xlFillDefault
Range(ActiveCell, ActiveCell.End(xlDown)).Select
Columns("E:E").Select
Selection.Copy
Range("E1").Select
ActiveSheet.Paste
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Columns("L:L").Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
Range("A1").Select
MsgBox "'C.A' Degerleri Guncellenmistir."
End Sub
@efe可以tercan你讀過我的回答上面?任何反饋 ? –
我剛讀和嘗試,但它給了一個錯誤「範圍(‘E12’)。公式= _「」,我不知道爲什麼,看到下面 」子duzenle() 列(「 E:E 「)複製範圍(」 L1 「) 範圍(」 E12 「)。選擇 Application.CutCopyMode =假 隨着工作表(」 CA「) LASTROW = .Cells(.Rows。 (「E12」)。Formula = _(「E12」)。結束(xlUp)。行 End With 範圍 「= IFERROR(VLOOKUP(B3,CA!B $ 3:G」&LastRow& 「,4,0),IF(ISBLANK('2017'!L12),」「,'2017'!L12)) '' –
使用'_'字符可以將長命令分成幾行。它必須是該行中的最後一個字符。如果你不拆分語句,刪除'_'字符。 – teylyn