Excel: Jak przekonwertować „ciąg” na „liczbę”?


17

Mam użytkownika z zapytaniem z bazy danych SQL, który zwraca ciąg znaków w tej formie:

000123123.23000
000123123.23000
000123123.23000
000123123.23000
000123123.23000

To są naprawdę liczby, jednak nie można ich sumować. Prawidłowym sposobem rozwiązania tego problemu może być rzutowanie danych w zapytaniu SQL, ale wtedy przeglądarka zapytań programu Excel nie może ich wyświetlić. Jako obejście tego dokonuję

 = <CELL> +1 -1.

Czy istnieje bardziej eleganckie rozwiązanie?

Odpowiedzi:


27

Myślę, że funkcja wartości może ci się przydać

 = VALUE(< CELL >)

PD:

W języku hiszpańskim używamy funkcji VALOR:

 = VALOR(< CELL >)

myślę, że powinno być tak samo w języku angielskim


Dokładnie tego szukałem! Myślałem, że może istnieć funkcja eval () lub taka - ale to jest to!
SirStan,

cieszę się, że mogę być pomocny !!!
Jhonny D. Cano-Lewica-

1

Używam tego małego makra

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

Które konwertuje wszystkie podświetlone komórki na liczby, jeśli są ciągami


Niestety nie zadziała to w obszarze zapytań do bazy danych.
SirStan,

Chodzi o to, że nie sądzę, aby można było naprawić dane na miejscu, jeśli pochodzą one z zapytania. Myślę, że funkcja wartości jest dla Ciebie najlepsza.
Kol.

0

Miałem ten sam problem, ale funkcja WARTOŚĆ nie działała w moim pliku tsv. Ale mała sztuczka spełniła zadanie:

  1. wybierz kolumnę z liczbami w formacie tekstowym

  2. Ctrl+ F-> wymienić .z,

(Zwykle nienawidzę takich rozwiązań, ale jak już powiedziano, po prostu zamieszczam je tutaj, ponieważ „normalny” sposób ich rozwiązania nie zadziałał.)


Karl, ta odpowiedź mnie zaskoczyła. Jedynym sposobem, w jaki mogłem zobaczyć, jak działa, jest zmiana lokalna, w której przecinek jest używany jako separator dziesiętny.
fixer1234
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.