【发布时间】:2014-06-14 06:38:07
【问题描述】:
如何读取一列(A 列)中的数据并根据单元格(字符串)中的数据写入同一行的 B 列?
例如:读取单元格 A1 中的值(例如“键盘”)并根据值“Dell、Targus、Sony 等”到单元格 B1 中。全部在使用列 A 和 B 的数组中。使用从 .end(xlUp) 到单元格 A1 和 B1 的单元格。
速度优化并不是那么重要。
【问题讨论】:
-
我已经尝试了很多来自类似问题的其他建议。
如何读取一列(A 列)中的数据并根据单元格(字符串)中的数据写入同一行的 B 列?
例如:读取单元格 A1 中的值(例如“键盘”)并根据值“Dell、Targus、Sony 等”到单元格 B1 中。全部在使用列 A 和 B 的数组中。使用从 .end(xlUp) 到单元格 A1 和 B1 的单元格。
速度优化并不是那么重要。
【问题讨论】:
也许这有助于您入门。想象一下我有:
A B
1 Keyboards //result = "Dell"
2 Monitors //result = "Sony"
3 Speakers //results = "Targus"
以下代码检测 A 列中有多少个单元格,然后循环遍历它们以将信息添加到 B 列中。
Sub FillColumnB()
Dim rng As Range, cl As Range
Set rng = Range("A1:A" & Range("A" & Rows.Count).End(xlUp).Row)
For Each cl In rng
If cl = "Keyboards" Then
cl.Offset(0, 1) = "Dell"
ElseIf cl = "Monitors" Then
cl.Offset(0, 1) = "Sony"
ElseIf cl = "Speakers" Then
cl.Offset(0, 1) = "Targus"
End If
Next
End Sub
【讨论】: