Як перетворити рядок на подвійний у vba (з прикладами)


Ви можете використовувати функцію CDbl у VBA, щоб перетворити текстовий рядок на подвійний тип даних.

Ось поширений спосіб використання цієї функції на практиці:

 Sub ConvertStringToDouble()

    Dim i As Integer

    For i = 2 To 11
        If IsNumeric(Range(" A " & i)) Then
            Range(" B " & i) = CDbl(Range(" A " & i))
        Else
            Range(" B " & i) = 0
        End If
    Next i

End Sub

Цей конкретний макрос перетворює кожен рядок у діапазоні A2:A11 на подвійний тип даних, лише якщо рядок є числом.

В іншому випадку рядок буде перетворено на нульове значення.

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: перетворення рядка на Double у VBA

Припустимо, у нас є такий стовпець значень в Excel, наразі відформатований як текстові рядки:

Припустімо, ми хочемо перетворити кожен рядок на тип даних double , лише якщо рядок є числом , і відобразити їх у стовпці B.

Для цього ми можемо створити такий макрос:

 Sub ConvertStringToDouble()

    Dim i As Integer

    For i = 2 To 11
        If IsNumeric(Range(" A " & i)) Then
            Range(" B " & i) = CDbl(Range(" A " & i))
        Else
            Range(" B " & i) = 0
        End If
    Next i

End Sub

Коли ми запускаємо цей макрос, ми отримуємо такий результат:

Зауважте, що лише текстові рядки в стовпці A, які є числами, перетворюються на типи подвійних даних у стовпці B.

В іншому випадку текстові рядки просто перетворюються на нульове значення.

Примітка . Ви можете знайти повну документацію для функції VBA CDbl тут .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:

Як перетворити рядок на int у VBA
Як перетворити рядок на довгий у VBA

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *