繁体   English   中英

根据另一个单元格的内容替换单元格中的数据

[英]Replace data in cells based on content of another cell

我对 VBA 并不太熟悉,而且我正在努力编写一个可以查看整个范围的宏。 我想自动化一种方法来替换单个工作表中在特定列中具有 Null 的单元格。

我在使用特定单元格值的 IF Then Else 语句方面取得了一些有限的成功,但无法弄清楚使用单元格范围。 IE

IF Range("B1").Value = "Null" And Range("A1").Value = ("*book") Then Range("C1").Value = ("book")

以下是数据集的示例:

样本数据集

A 列是书籍、桌子和椅子的类型。 每个项目的描述中都有书、桌子或椅子一词,B 列应该有一个类别描述,但有些单元格说 Null。 我要做的是,如果 B 列中的值显示“Null”,然后根据 A 列中的值将 Book、Table 或 Chair 的描述输入 C 列。如果 B 列中的值不是 Null,则执行没有什么。 这只是一个例子,真实的数据集大约有 25,000 行。

这是一个非常粗略的代码示例。 有很多方法可以解决这个问题。

Sub test()

Dim i As Integer
Dim lRow As Long
Dim ws As Worksheet

Set ws = ThisWorkbook.Worksheets("Sheet1")
' get the row number of the last row with data in column A
lRow = ws.Cells(Rows.Count, "A").End(xlUp).Row
' Start in row 2
For i = 2 To lRow
    If Range("B" & i).Value = "Null" And Range("A" & i).Value Like "*book" Then
        Range("C" & i).Value = ("book")
    End If
Next i

End Sub

编辑:调整代码以动态确定最后一行数据。

暂无
暂无

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

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