У меня есть два столбца от A1 до B10 в Sheet1. каждая из ячеек в этих столбцах имеют строки «а» или «б» или «C»Excel VBA конвертирует значения диапазона ячеек
A B
1 a a
2 a b
3 b c
4 b b
5 a a
6 c b
7 a a
8 a c
9 b a
10 a b
Я хочу, чтобы преобразовать каждую ячейку, которая имеет значение «а» до целого числа «12», «б» в целое число «14» и «c» в целое число «16» с использованием VBA. и показать результаты в Sheet2 в соответствующих ячейках.
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
Что вы получаете? или Что не работает? Я подозреваю, что вы должны использовать 'Select Case original.value' или' original.textValue' (поскольку «original» - это объект диапазона, а не текст. – Tensibai
и я не знаю, как вставить результат в другой лист в соответствующие ячейки? – javad
Prepend оригинал с 'sheet (2)' должно быть достаточно. Но вам, возможно, придется использовать 'sheets (2). Original.range.value =' (непроверенный и неуверенный из памяти) – Tensibai