Excel: Як перетворити "рядок" на "число"?


17

У мене є користувач із запитом із бази даних SQL, який повертає ряд рядків у такій формі:

000123123.23000
000123123.23000
000123123.23000
000123123.23000
000123123.23000

Це дійсно числа, однак їх неможливо підсумувати. Правильним способом виправити це може бути передача даних у SQL-запит, але тоді переглядач запитів Excel не може відобразити їх. Як вирішую

 = <CELL> +1 -1.

Чи є більш елегантне рішення?

Відповіді:


27

Я думаю, що значення значення може бути корисною для вас

 = VALUE(< CELL >)

PD:

На іспанській мові ми використовуємо функцію VALOR:

 = VALOR(< CELL >)

я думаю, це має бути те саме на англійській мові


Саме те, що я шукав! Я думав, що може бути eval () або така функція - але це все!
SirStan

рада допомогти !!!
Джоні Д. Кано -Продукція-

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

Який перетворює всі виділені комірки в числа, якщо вони є рядками


На жаль, це не працює в області запитів до бази даних.
SirStan

Добре, я не думаю, що існує спосіб виправити дані in situ, якщо вони надходять із запиту. Я думаю, що значення значення є найкращим для вас.
Кол

0

У мене була така ж проблема, але функція VALUE не працювала в моєму tsv-файлі. Але невелика хитрість справила цю роботу:

  1. виберіть стовпчик з цифрами у текстовому форматі

  2. Ctrl+ F-> замінити .на,

(Зазвичай я б ненавиджу такі рішення, але, як було сказано, я просто розміщую його тут, тому що "нормальний" спосіб його вирішення не спрацював для мене.)


Карл, ця відповідь мене наткнула. Єдиний спосіб, коли я міг би бачити, як це працює, це якщо є місцевий варіант, де кома використовується як десятковий роздільник.
fixer1234
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.