Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Wie macht EXCEL das: Rechnen mit Textformaten?





Frage

Hallo Ihr! Ich bin durch eine Formel aus den Seiten [url]www.excelformeln.de[/url] darauf gestossen, dass EXCEL auch mit Textformaten mathematische Funktionen durchführen kann. Hier 2 Beispiele: In A1 steht: ‘123456 (Textformat) In B1 steht: =A1/2 Ergebnis: 61728 (Zahl) In A5 steht: ’25.03.2003 (Textformat) In B5 steht: A5-1 (Format Standard) In C5 steht: =B5 (Format Datum) Ergebnis: In B5: 37704 (Tageszahl) In C5: 24.03.03 (aus dem Text richtig generiertes Datum) Im 2. Beispiel führt der Text in A5 : ’25.3.03 zum gleichen Ergebnis. Nun meine Frage: Wie macht EXCEL das, und wo wird dieses beschrieben? mfg Knubbel Ps: Eine Formatänderung in A5 ändert nicht die Textdarstellung.

Antwort 1 von gresti

Hi Knubbel,
ist das die Lösung?

Public Sub FormatTextToNumber()
  Dim rngCell As Range
  
  For Each rngCell In Selection.Cells
  With rngCell
    .NumberFormat = "General"
    If IsNumeric(.Text) Then
    .Value = CDbl(.Text)
    End If
  End With
  Next 'rngCell
End Sub


Gefunden hier.

Gruß
gresti

Antwort 2 von Knubbel

Hi gresti,

mit einem solchen Code kann man so etwas natürlich lösen.

Aber Excel macht das ja auch selbständig (ohne separaten Code).

Warum und wie?

mfg Knubbel

Antwort 3 von Knubbel

Hi Ihr,

in dem von gresti gesetzten link http://www.aboutvb.de/vba/artikel/vbaxlformattexttonumber.htm

sind nicht alle erklärenden Äusserungen richtig.

z.B. rechnet Excel mit einer als Text eingegebenen Zahl als Zahl weiter (Schwehrpunkt liegt auf RECHNEN).

Durch den o.a. Code kann auch ein Text-Datum nicht klar als solches definiert werden. Aber Excel kann das selbstätig.

mfg Knubbel

Antwort 4 von gresti

sorry knubel,
wollte nur helfen

grest

Antwort 5 von Knubbel

Hi grest,

kein "sorry", ich muss mich bedanken für Deine Antwort.

Aber die Antwort auf meine Frage würde ich dennoch gerne wissen. Es gibt doch sicherlich genug Excel-Spezialisten hier im SN.

mfg Knubbel

Antwort 6 von want2cu

Hallo Knubbel,

ich will dann mal einen "Lösungsversuch" wagen.

Wenn du solch eine Zelle hast, die eine Zahl beinhaltet, der aber von EXCEL als Text interpretiert wird (linksbündig ausgerichtet), dann kannst du so einen "Text" mit der Funktion WERT in eine "echte" Zahl verwandeln.

Ich vermute mal, dass EXCEL den Zellinhalt bei "manchen" Berechnungen automatisch als WERT auffasst. Das gilt z.B. für Multiplikation und Division.

Bei Addition oder Subtraktion sowie bei Funktionen wie SUMME bleibt es beim Text.
Ich kannmir diesen Effekt nur so erklären, dass Excel bei bestimmten Rechenoperationen diese "intern" so verwendet, wie dies bei der Funktion WERT geschieht.

Tja .... vielleicht kommt ja noch ne akademischere Lösung. ;-)

CU
wanz2cu

Antwort 7 von Knubbel

Hallo Klaus, @all!

Der „halbakademische“ Lösungsansatz ist nicht ganz richtig. Mach mal folgenden simplen Test:

In A1: ‘123456

In B1: Kopieren (A1), Einfügen/Wert --- es bleibt Text

In C1: =A1+0 -- Zahl

In D1: =A1-0 --- Zahl

In E1: =A1+1 --- Zahl

In F1: =A1*1 --- Zahl

In G1: =A1/1 --- Zahl

In H1: =A1^1 --- Zahl

Das bedeutet, wenn Excel rechnen muss, wird aus einem Text erst versucht eine Zahl zu generieren. Dies funktioniert auch bei Datumsfunktionen so, aber nicht bei Funktionen wie Summe, Mittelwert etc.

Ich habe bisher noch keinen Hinweis auf dieses Verhalten gefunden (nicht in Büchern, nicht in der OH, nicht auf anderen “schlauen” Sites)

mfg Grüßen Knubbel



Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: