17

У меня есть пользователь с запросом из базы данных SQL, который возвращает последовательность строк в этой форме:

000123123.23000
000123123.23000
000123123.23000
000123123.23000
000123123.23000

Это действительно числа, однако их нельзя суммировать. Правильный способ исправить это может заключаться в приведении данных в запросе SQL, но тогда средство просмотра запросов Excel не сможет их отобразить. В качестве обходного пути я делаю

 = <CELL> +1 -1.

Есть ли более элегантное решение?

3 ответа3

27

Я думаю, что функция значения может быть полезна для вас

 = VALUE(< CELL >)

PD:

На испанском языке мы используем функцию VALOR:

 = VALOR(< CELL >)

я думаю, что должно быть то же самое на английском

1

Я использую этот маленький макрос

Sub txttonum()
    For Each tcell In Selection.Cells
        If TypeName(tcell.Value) = "String" Then
            tcell.Value = Val(tcell.Value)
        End If
    Next
End Sub

Который преобразует все выделенные ячейки в числа, если они строки

0

У меня была такая же проблема, но функция VALUE не работала в моем TSV-файле. Но небольшой трюк сделал свою работу:

  1. выберите столбец с числами в текстовом формате

  2. Ctrl+F -> заменить . с ,

(Обычно я ненавижу такие решения, но, как я уже сказал, я просто публикую их здесь, потому что «нормальный» способ их решения не сработал для меня.)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .