Удаление апостроф в выбранной ячейке
Я новичок в VBA. Попытка изменить значения текста в моей электронной таблице (например, "123" на "123") в выбранной области на "Общие" или "Числовые". У меня есть небольшой код, который можно выбрать (но не изменить на общий)
Sub Macro1()
'
' Macro1 Macro
Rows("1:1").Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$O$49999").AutoFilter Field:=8, Criteria1:="NUM"
ActiveSheet.Range("$A$1:$O$49999").AutoFilter Field:=10, Criteria1:="0"
ActiveSheet.Range("$A$1:$O$49999").AutoFilter Field:=6, Criteria1:="<>"
With Selection
.NumberFormat = "General"
End With
End Sub
Что я должен изменить в коде, чтобы получить требуемый результат? Спасибо за помощь!
2 ответа
Как ты попал на свое поле?
В общем, вы можете использовать:
Заменить (строка1, найти, замена, [начать, [считать, [сравнить]]])
Dim LResult As String
LResult = Replace("alphabet", "a", "e")
В этом примере переменная с именем LResult теперь будет содержать значение "elphebet".
Чтобы преобразовать текст в число, попробуйте это:
Sub ConvertTextNumberToNumber()
For Each WS In Sheets
On Error Resume Next
For Each r In WS.UsedRange.SpecialCells(xlCellTypeConstants)
If IsNumeric(r) Then r.Value = Val(r.Value)
Next
Next
End Sub
И вы можете вызвать эту функцию:
Sub Macro1()
'
' Macro1 Macro
Rows("1:1").Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$O$49999").AutoFilter Field:=8, Criteria1:="NUM"
Call ConvertTextNumberToNumber()
ActiveSheet.Range("$A$1:$O$49999").AutoFilter Field:=10, Criteria1:="0"
Call ConvertTextNumberToNumber()
ActiveSheet.Range("$A$1:$O$49999").AutoFilter Field:=6, Criteria1:="<>"
Call ConvertTextNumberToNumber()
End Sub