Excel 用于插入列和公式的VBA代码
我有一个需要删除某些列的文件。然后我需要插入一个名为“正值”的列,并添加一个公式,以便在这个新列中只提取另一列中的正值 到目前为止,我拼凑了以下代码来删除我不需要的列,但我一直在研究如何在名为“net”的现有列旁边插入一个新列,然后让该列在相关单元格中仅显示net列的正值 当前代码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"
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行长。