繁体   English   中英

在Excel中使用VBA在与工作表不同的工作表上查找和更新相关记录

[英]Use VBA in Excel to Find and Update Related Records on a Different Sheet from Working Sheet

我有两个电子表格。 每个电子表格都包含带有各种信息位的行,包括唯一的标识符号(在这种情况下为ISBN)。

我正在尝试创建一个脚本来确定工作表上是否存在记录(从A列获取ISBN –工作表称为ePubWorking),并在包含该行的主表(ePubMaster)上标记一列(V)与上一张纸上的ISBN相同(新纸上的ISBN也保留在A列中)。 它需要对ePubWorking工作表上找到的每个记录执行此操作。

我已经尝试了一些在这里找到的代码变体,但是似乎什么也无法工作。 这是我目前正在使用的(似乎没有做任何事情):

 Dim rCell As Range
 Dim rFind As Range
 Dim iColumn As Integer

 For Each rCell In Sheets("ePubWorking").Range("A2", Sheets("ePubWorking").Cells(Rows.Count, "A").End(xlUp))

  Set rFind = Sheets("ePubMaster").Rows(1).Find(What:=Trim(rCell.Value), _
        LookIn:=xlValues, _
        LookAt:=xlWhole, _
        SearchOrder:=xlByRows, _
        SearchDirection:=xlNext, _
        MatchCase:=False)
        rCell.Offset(0, 2).Value = "Sent"

        If Not rFind Is Nothing Then
        rFind.Offset(0, 21).Value = "Sent"
        End If
Next rCell

使用以上内容(或我的其他任何变体)都没有任何反应。 我什至无法使“已发送”部分出现在辅助工作表上。

谁能指出我正确的方向?

好了,谢谢您的指导,很显然,我在弗兰肯斯坦的尝试上花了很长时间,对我正在做的事情视而不见。 正如Zac指出的那样,我在ePubMaster工作表上沿错误的方向看。

工作代码:

Dim wb As Workbook: Set wb = ThisWorkbook
Dim workingSheet As Worksheet: Set workingSheet = wb.Sheets("ePubWorking")
Dim masterSheet As Worksheet: Set masterSheet = wb.Sheets("ePubMaster")

Dim workingRange As Range: Set workingRange = Range(workingSheet.Range("A2"), workingSheet.Cells(workingSheet.Rows.Count, "A").End(xlUp))

Dim rCell As Range
Dim rFind As Range

For Each rCell In workingRange
    If Not rCell.Value = vbNullString Then
        Set rFind = masterSheet.Rows.Find(What:=Trim(rCell.Value), _
                    LookIn:=xlValues, _
                    LookAt:=xlWhole, _
                    SearchOrder:=xlByRows, _
                    SearchDirection:=xlNext, _
                    MatchCase:=False)

        rCell.Offset(0, 2).Value = "Sent"

        If Not rFind Is Nothing Then
            rFind.Offset(0, 21).Value = "Sent"
        End If
    End If
Next rCell

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM