我得到了这个项目的工作,我有点难过。我们有一个例程由一个快捷方式宏驱动,它将数据从A列移动到F列,从而开始构建一个列表列表中的逐项列表。
然而,我需要将当前操作包装在IF语句中,以便如果G5(或RC)中的数据等于A4中的单元格值,则操作不会将数据移动到新单元格(或者,RC-1)。如果我可以降低逻辑,我可以让操作按预期工作。
使用宏录制器创建宏,但这里是代码:
Sub InsertTagLine()
Selection.Insert Shift:=xlDown
ActiveCell.Offset(1, 0).Range("A1").Select
Selection.Copy
ActiveCell.Offset(-1, 4).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Offset(0, 1).Range("A1").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=""TAG: ""&RC[-1]"
ActiveCell.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveCell.Offset(0, -1).Range("A1").Select
Application.CutCopyMode = False
Selection.ClearContents
ActiveCell.Offset(0, -3).Range("A1").Select
ActiveCell.FormulaR1C1 = "1"
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = "=R[-1]C+1"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "=R[-1]C+1"
ActiveCell.Offset(1, 0).Rows("1:1").EntireRow.Select
End Sub
答案 0 :(得分:1)
您是否需要更复杂的事情而不是将所有代码包装在if语句中?
If (Range("G5").Value <> Range("A4").Value) Then
'Your code
End If