Excel VBA转换一系列单元格的值
我在表1中有两列,从A1到B10。这些列中的每个单元格都有字符串“a”或“b”或“c” 我想使用VBA将每个具有值“a”的单元格转换为整数“12”,“b”转换为整数“14”,“c”转换为整数“16”。并在相应单元格的表2中显示结果Excel VBA转换一系列单元格的值,excel,vba,Excel,Vba,我在表1中有两列,从A1到B10。这些列中的每个单元格都有字符串“a”或“b”或“c” 我想使用VBA将每个具有值“a”的单元格转换为整数“12”,“b”转换为整数“14”,“c”转换为整数“16”。并在相应单元格的表2中显示结果 A B 1 12 12 2 12 14 3 14 16 4 14 14 5 12 12 6 16 14 7 12 12 8 12 16 9 14 12 10 12 14
A B
1 12 12
2 12 14
3 14 16
4 14 14
5 12 12
6 16 14
7 12 12
8 12 16
9 14 12
10 12 14
我有一个非常不完整的代码:
Sub getConvert()
For Each original In Range("A1 , B10")
Select Case original
Case "a"
CorrectedText = Replace(original, "a", "12")
Case "b"
CorrectedText = Replace(original, "b", "14")
Case Else
CorrectedText = Replace(original, "c", "16")
End Select
Next
End Sub
您需要访问每个单元格,读取其值,然后在循环中覆盖:
Dim original As Range, destination As Worksheet
Set destination = Sheets("Sheet2")
For Each original In Range("A1:B10")
Select Case original.Value
Case "a": destination.Range(original.Address).Value = "12"
Case "b": destination.Range(original.Address).Value = "14"
Case "c": destination.Range(original.Address).Value = "16"
End Select
Next
你得到了什么?或者什么不起作用?我怀疑您应该使用
选择Case original.value
或original.textValue
(因为original
是一个范围对象,而不是text。而且我不知道如何将结果粘贴到相应单元格中的另一张表中?用表(2)
预先粘贴原件就足够了。但您可能必须使用表(2).Original.range.value=
(未经测试且内存不确定),我不知道如何将结果粘贴到相应单元格中的另一张表中?
Dim original As Range, destination As Worksheet
Set destination = Sheets("Sheet2")
For Each original In Range("A1:B10")
Select Case original.Value
Case "a": destination.Range(original.Address).Value = "12"
Case "b": destination.Range(original.Address).Value = "14"
Case "c": destination.Range(original.Address).Value = "16"
End Select
Next