【问题标题】:Excel VBA: copy cell "address" message content to a new sheetExcel VBA:将单元格“地址”消息内容复制到新工作表
【发布时间】:2015-05-07 13:33:34
【问题描述】:

我有这段代码可以定位 A 列中的空白单元格并以红色突出显示它们。然后,一个 msgbox 将使用“地址”显示空白单元格的位置。例如,它将显示:“No Value, in $A$15”。

Sub CeldassinData()

Dim i As Long, r As Range, coltoSearch As String

coltoSearch = "A"

For i = 1 To Range(coltoSearch & Rows.Count).End(xlUp).Row
    Set r = Range(coltoSearch & i)
    If Len(r.Value) = 0 Then
         r.Interior.ColorIndex = 3 ' Red
          r.Select
          MsgBox "No Value, in " & r.Address
    End If
Next
End Sub

我需要帮助: 对于将弹出并找到空白单元格的每条消息,我想复制例如消息中显示的值“$A$15”并将其粘贴到同一工作簿中另一张工作表的 A 列中。

如果有人帮助我,我将不胜感激。提前谢谢你。

【问题讨论】:

    标签: vba excel


    【解决方案1】:

    在msgbox之后放这个:

    Sheets("Log").Range("A" & Sheets("Log").Range("A" & rows.count).end(xlup).Row).offset(1,0).formula = r.Address
    

    确保您在那里有一个名为 Log 的工作表,它将填充

    【讨论】:

    • 有效!!非常感谢:)
    • 嘿,我需要其他帮助,也许你可以帮助我。我在 Excel 中有一个名为“角色”的标题的列。我希望该列中的所有行都包含数字 3。因此,首先,我想在这些行中找到值,如果值不是 3,则突出显示该行并显示此消息:“学生的角色应该是 3 英寸”。按照我之前的示例,我有此代码,但它不适用于此:
    • Sub role() Dim i As Long, r As Range, coltoSearch As String coltoSearch = "F" For i = 1 To Range(coltoSearch & Rows.Count).End(xlUp).Row Set r = Range(coltoSearch & i) If Len(r.Value) = 23 Then r.Interior.ColorIndex = 3 ' Red r.Select MsgBox "Role for Students should be 3 in" & r.Address End If Next End Sub
    猜你喜欢
    • 2014-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-28
    • 2017-05-24
    • 1970-01-01
    相关资源
    最近更新 更多