Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
616to620
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
616to620
616to620
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Text in einer Zahl darstellen, umwandeln

Text in einer Zahl darstellen, umwandeln
05.06.2005 15:28:40
Stefan
Hallo liebe Forum-Leser,
liebe Cracks, liebe Hobbybastler, liebe....,habe ich jemanden vergessen,
ich grüße alle die sich für Excel interessieren...und vor allem, Hans W. Herber.
Das PROBLEM:
Der Wert in B2, ein Textfeld mit dem Inhalt "Name", soll in einer Zahl
umgewandelt werden. Der Cloue, diese Zahl soll auch in einer anderen Excelmappe
wieder in Text verwandelt werden! ...natürlich wieder zurück in "Name".
Geht das überhaupt ??????
Ich habe lange gesucht, leider nixx gefunden, die Sache mit Funktion ANZAHl
trifft nicht zu - Hat Jemand von Euch eine Lösung ? Ich habe leider so wenig
Ahnung von Excel, nicht mal ansatzweise eine Idee..... :((
Vielen Dank für Euer Interesse..
LG
Stefan

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Text in einer Zahl darstellen, umwandeln
05.06.2005 19:05:27
Stefan B.
Hallo Stefan,
Versuchs mal damit:
----------------------------------------------------------------------

Function Convert_to_Number(ByVal myString As String)
Dim i As Long
Dim x() As Byte
x = StrConv(myString, vbFromUnicode)
For i = 0 To UBound(x)
z = z + CStr(x(i) + 100)
Next i
Convert_to_Number = Val(z)
End Function


Function Convert_to_String(ByVal myNumber As Double)
Dim k, y, j, NumberAsString As String
Dim i, l As Integer
NumberAsString = CStr(myNumber)
If Len(NumberAsString) Mod 3 <> 0 Then
MsgBox "Error: String has not correct length to be converted"
Exit Function
End If
For i = 1 To Len(NumberAsString) / 3
k = Mid(NumberAsString, (i - 1) * 3 + 1, 3)
l = Val(k) - 100
y = String(1, l)
j = j + y
Next i
Convert_to_String = j
End Function


Sub Conversion_Test()
Dim x As Double
Dim y As String
x = Convert_to_Number("Name")
y = Convert_to_String(x)
Debug.Print y
End Sub

-----------------------------------------------------------------
Ich hoffe es funktioniert wie Du es Dir vorstellst!
Schoene Gruesse
Stefan B.
Anzeige
AW: Text in einer Zahl darstellen, umwandeln
05.06.2005 23:33:19
Stefan
Hallo Stefan,
vielen Dank für Deinen Vorschlag! Leider bin ich noch nicht so fit :(
Aber es macht mir trotzdem Spass. Ich habe das mit Deinem Code nicht hinbekommen.
Irgendwie funzzzzt da garnichts. Was habe ich gemacht? In einer neuen Excelmappe
habe ich ein Modul eingefügt und dann Deinen Code in das Modul ?
Wenn ich das irgendwie hinbekomme, lade ich Dir mal die Mappe hoch.
Sehe schon, heute geht garnixxxxxx mehr sehe hier nix :((

LG
Stefan
AW: Text in einer Zahl darstellen, umwandeln
06.06.2005 02:46:04
Stefan B.
Hallo Stefan,
Wenn Du die beiden Functions in dem Modul hast, brauchst Du eigentlich kein VBA mehr. Du kannst einfach in einer Zelle eingeben "=Convert_To_Number("Name")", und Du bekommst das Ergebnis 178197209201. Wenn Du dann die Zahl nimmst in der Formel "=Convert_To_String(178197209201)", dann bekommst Du wieder "Name" als Ergebnis. Um die beiden Funktionen zu nutzen kannst Du die Sub Conversion_Test auch komplett weglassen.
Hoffe das klappt!
Schoene Gruesse
Stefan B.
Anzeige
AW: Text in einer Zahl darstellen, umwandeln
06.06.2005 22:50:42
Stefan
Hallo Stefan,
vielen Dank für die Erklärung.
Ich habe das Ergebnis reproduzieren können, fast: "1,78197E+11" ??? - aber nicht verstanden!
Ich weiss auch nicht wie ich das dann genau auf ein Feld beziehen kann.
Mein Grundgedanke war der: "In zelle A:1 wird ein Name eingetragen und in Zelle B:2 dann
als Zahl ausgegeben!" Ich habe versucht irgendwie einen Bezug auf die Zellen zu bekommen
aber das schein mit Funktionen garnicht zu funktionieren, wie gesagt, ich stehe
da ziemlich am Anfang mit Excel....trotz alledem, macht spass!
Gruss Stefan
AW: Text in einer Zahl darstellen, umwandeln
07.06.2005 00:55:46
Stefan B.
Hallo Stefan,
Gib in A1 den Text ein den Du umwandeln willst, und in B2 "=Convert_To_string(A1)".
Dann markier die Zelle B2 und geh in Deiner Taskleiste auf Format - Zellen. Im Registerkartenreiter "Zahlen" waehle die Kategorie "Zahl", mit 0 Dezimalstellen und ohne 1000er Trennzeichen. Dann solltest es so funktionieren wie Du Dir das vorstellst.
Schoene Gruesse
Stefan
Anzeige
AW: Text in einer Zahl darstellen, umwandeln
07.06.2005 08:22:49
Stefan
Hallo Stefan,
hmmmmmm, eine Funktion läuft also die ganze Zeit ?!?
Ich habe in A1 den Text "Stefan" eingetragen und bekomme nun in B2 "#WERT!" angezeigt.
Es tut sich also etwas :) Entferne ich nun in A1 den Text, läuft die Funktion in
Error rein und gibt "String has not correct length to be converted" aus und schreib
in B2 eine "0".
Nun verstehe ich aber nicht die Ausgabe "#WERT!" in B2 ???????
Die Zellenformatierung habe ich auf Zahl, keine 1.000 Trennzeichen und keine Kommastellen
gesetzt...was nun ?
Ganz großes DANKESCHÖN
Gruss Stefan
AW: Text in einer Zahl darstellen, umwandeln
08.06.2005 01:06:37
Stefan B.
Hallo Stefan,
Tut mir leid dass das so schlecht geklappt hat, da hab ich wohl nicht genug getestet.
Versuchs bitte mit dieser Datei:
https://www.herber.de/bbs/user/23719.xls
Es gibt zwei Dinge die ich als Problem sehe:
a) Funktionen arbeiten immer in einem bestimmten Raum, fuer den sie geschrieben wurden. Dabei gibt es zwei Dinge die das beeinflussen: 1) ob die Programmierung in einem Modul oder einem Arbeitsblatt steckt und 2) ob die Funktion als "privat" oder "public" deklariert ist; solltest Du irgendwo ein VBA-Buch zur Hand haben wird da sicher was zum Thema Gueltigkeitsbereich erklaert. Auch die VBA-Hilfe sagt was dazu, aber die Ausdrucksweise dort wird Dir denke ich nicht viel weiterhelfen. Auf jeden Fall denke ich dass das bei Dir ein Problem gewesen sein koennte: ich hab meine Funktionen in einem Modul, Du hattest Deine vielleicht auf Arbeitsblatt-Ebene...
b) Meine Funktionen haben es nicht verkraftet dass ich wirklich eine ZAHL erstellen wollte. Jeder Buchstabe mehr macht die Zahl um drei Stellen laenger. Excel kann wohl 12 stellige Zahlen ausgeben ("Name"), 18 Stellen sind aber offenbar zuviel ("Stefan"). Deshalb wurde, als ich das jetzt probiert habe, meine Zahl falsch ausgegeben - und konnte deshalb auch nicht mehr richtig zurueckgerechnet werden. Ich hab es jetzt aufgegeben eine Zahl zu produzieren: was Du in der Datei siehst sieht aus wie eine Zahl, ist aber nur ein String. Also - probier nicht damit zu rechnen! Dafuer funktioniert die Rueckumwandlung ziemlich gut. Ich nehme an Du versuchst irgendwas wie eine Verschluesselung, das sollte damit funktionieren.
Ich hoffe es klappt jetzt!
Schoene Gruesse
Stefan
Anzeige
AW: Text in einer Zahl darstellen, umwandeln
08.06.2005 20:59:08
Stefan
Hallo Stefan,
ein riesen-großes D-A-N-K-E-S-C-H-Ö-N !!!
Das ist genau was ich wollte, hätte nicht gedacht, ein Codierung und das wesentlich das
die Formel ebenso decodiert, funktioniert ! Danke, Danke, Danke,
Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke,... x 1.000
Stefan Du bist großartig !
Ich werde das nun weiter verwenden können und baue mir wie Du schon richtig erkannt hast,
eine Verschlüssellung in meinem Programm ein...prima.
LG_Stefan____________________________________________________D-A-N-K-E-S-C-H-Ö-N
Ende

346 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige