Excel 用于插入列和公式的VBA代码

Excel 用于插入列和公式的VBA代码,excel,vba,Excel,Vba,我有一个需要删除某些列的文件。然后我需要插入一个名为“正值”的列,并添加一个公式,以便在这个新列中只提取另一列中的正值 到目前为止,我拼凑了以下代码来删除我不需要的列,但我一直在研究如何在名为“net”的现有列旁边插入一个新列,然后让该列在相关单元格中仅显示net列的正值 当前代码 Sub ArrayLoop() Dim ColumnsToRemove As Variant Dim vItem As Variant Dim A As Range Sheets("sheet 1"

我有一个需要删除某些列的文件。然后我需要插入一个名为“正值”的列,并添加一个公式,以便在这个新列中只提取另一列中的正值

到目前为止,我拼凑了以下代码来删除我不需要的列,但我一直在研究如何在名为“net”的现有列旁边插入一个新列,然后让该列在相关单元格中仅显示net列的正值

当前代码

Sub ArrayLoop()
  Dim ColumnsToRemove As Variant
  Dim vItem As Variant
  Dim A As Range

  Sheets("sheet 1").Select

  ColumnsToRemove = Array("acronym", "valueusd", "value gbp")
  For Each vItem In ColumnsToRemove
    Set A = Rows(8).Find(What:=vItem, LookIn:=xlValues, lookat:=xlPart)
    Debug.Print vItem, Not A Is Nothing

    If Not A Is Nothing Then A.EntireColumn.Delete
  Next
End Sub
目前,我手动插入新列并输入公式max(E9,0),以便新列显示0,或者如果另一列中的值大于0,则显示一个值。这部分也可以自动化吗


提前感谢。

有关插入的信息,请找到单元格并发出:

If Not A Is Nothing Then A.EntireColumn.Insert
要插入公式,请使用带有相应字符串值的
cell.formula=
,例如

Cells(1, A.column - 1).Formula = "=max(" & cells(9, A.column - 2).Address & ",0)" 

注A:插入列时,查找到的值的范围将向右移动,这就是为什么在单元格引用中需要
-1
nad
-2

你能回顾一下你的Q的标题和叙述来决定你是在讲一行还是在讲一列吗。谢谢你。这使我能够添加我需要的列。通过这个公式,我如何使它循环,使它适用于每个有值的单元格。当前,它将仅应用于顶部单元格,然后停止。我的数据集大约有6000行长。