我需要帮助写一个Excel宏,它可以做很多事情。我的贡献是将数据转换成这种格式的宏,但是我仍然停留在高亮显示上,甚至一点也不知道如何处理。对不起,这是超长的,提前谢谢一堆!
我遇到的问题是,如果A列中有重复的名称,我需要D列中所有总数的总和,以便最终用户用于查找高亮颜色。
只有收到高亮信息的公司才会在E栏中说"#N/A“。如果有多家公司,但E栏没有说"#N/A”,那么只有那些说"#N/A“的公司才会被包括在…总数的高亮/加法中。
非常感谢你的帮助!:)我会发一张图片,但它不会让我.
发布于 2015-03-11 05:49:06
有两种选择,一种是使用条件格式,比较简单,但在我看来需要更多的时间
您还可以使用私有方法在单元格值变化时更改其格式,为此需要在VBA上的工作表中创建代码,选择要使用列表中左侧顶部的代码的工作表,选择“查看代码”,这是必须编写代码的地方。
但是要小心,因为您正在处理诸如"#N/A“之类的错误,因为如果您做的事情如
If Range("C2").value = "#N/A" then
...
它不能工作,因为"#N/A“不是单元格值--它是一个错误指示符,所以您必须使用如下内容:
If worksheetfunciton.IfError(Range("C2"),"Error") = "Error" then
...
在这个示例中,如果已确定范围上的单元格值发生了更改,coe将显示一条消息,告诉您该单元格已更改,您所要做的就是根据您的愿望更改范围并更改行:对于您的条件,这应该有效,这是一种增强单元格的方法,可以是MsgBox "Cell " & Target.Address & " has changed."
。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
' The variable KeyCells contains the cells that will
' cause an alert when they are changed.
Set KeyCells = Range("A1:C10")
If Not Application.Intersect(KeyCells, Range(Target.Address)) _
Is Nothing Then
' Display a message when one of the designated cells has been
' changed.
' Place your code here.
MsgBox "Cell " & Target.Address & " has changed."
End If
End Sub
https://stackoverflow.com/questions/28987868
复制