Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
string in variable umwandeln
29.07.2014 13:58:02
ela
Hallo,
ich habe folgendes Problem.
Per Comboboxen lasse ich bestimmte Auswahlmöglichkeiten zu. Diese Auswahlmöglichkeiten stehen für variablennamen mit denen ich im programmablauf weiter arbeiten möchte, diese lese ich jedoch als String aus.
Wie kann ich diese Auswahlmöglichkeiten auslesen, damit sie in meinem Programm als Variablen und nicht als string erkannt werden?
Kann ich evtl den datentyp ändern? Und wenn ja auf welchen?
Oder ist es möglich diese Strings in variablen umzuwandeln bzw. das was zwischen den "" steht zu extrahieren?
Bsp: "bericht" -- bericht
viele grüße
ela

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

Betreff
Datum
Anwender
Anzeige
Mit den Namen von Variablen als Text kannst ...
29.07.2014 14:12:30
Variablen
…du mit der AufrufMethode CallByName arbeiten, die in VBA nachträglich (als Fkt bzw fktsartig) implementiert wurde, ela.
Voraussetzung ist, dass diese Variablen Eigenschaften/Methoden eines Objektes sind, das du als 1.Parame­ter/Ar­gument angeben musst. Das kann ein Klassen-, bspw auch ein DokumentKlassenModul oder die Application, sein. Es fktioniert in Analogie zu den Property-Prozeduren unter Hinzunahme von Methoden (vbMethod als 3.Param/Arg).
Gruß, Luc :-?
Besser informiert mit …

Anzeige
AW: Mit den Namen von Variablen als Text kannst ...
29.07.2014 14:34:30
Variablen
Hi
wenn du auf Variablenwerte über einen String zugreifen willst, könntes du alternativ zu Lucs vorgschlagener Methode auch die Werte in ein Dictionary packen:
als statt:
Dim Bericht as String
Dim Anzahl as long
Dim Auswahl as String
Bericht = "Hallo Welt"
Anzahl = 2
Auswahl = Inputbox("Welchen Wert wollen sie sehen?")
Msgbox ?
dann folgendes
Dim meineVariablen as Object
Dim Auswahl as String
Set meineVariablen = CreateObject("Scripting.Dictionary")
meineVariablen("Bericht") = "Hallo Welt"
meineVariablen("Anzahl") = 2
Auswahl = Inputbox("Welchen Wert wollen sie sehen?")
Msgbox meineVariablen(Auswahl)
Gruß Daniel

Anzeige
Was der alles weiß
29.07.2014 16:29:46
Nepumuk
Zitat:
die in VBA nachträglich (als Fkt bzw fktsartig) implementiert wurde
Komisch, ich kenn das aus VB6.0 was 1998 herausgegeben wurde. Ein abgespecktes VB6.0 wurde anschließend eine der Funktionsbibliotheken in Excel 2000, welches 1999 auf den Markt kam. CallByName gab's also schon ein Jahr bevor es in VBA auftauchte.
Gruß
Nepumuk

Was soll das! Es ist schon lange in VBA, aber ...
30.07.2014 03:20:37
Luc:-?
…trotzdem nachträglich, da es ja nicht nach dem Schema der anderen beiden CallBy-Arten konstruiert wurde!
Dir, Nepumuk, muss ich ja wohl nicht sagen, dass es in manchen PgmierSprachen bis dato fehlt. In welcher es zuerst auftauchte, kannst du gern bei Wikipedia nachlesen, falls du die nicht mehr kennst. ;-]
Nebenbei, ich habe 10 Jahre eher als du mit Pgmieren begonnen, war dann aber jahrzehntelang mit GR-Projekt­Entwicklung befasst. Die Pgmm mussten dann Andere schreiben… ;-]
Ansonsten bin ich über deinen abschätzigen Tonfall not amused. Du magst ja über große Pgmierkenntnisse verfügen, aber die sind nicht immer das A und O, sondern eigene, originäre/elle Ideen. Und damit scheint es bei vielen deiner Zunft doch etwas zu hapern, sonst wäre wohl Einiges, was ich mir schon vor Jahren erarbeitet habe, längst bekannt…
Aber natürlich habt ihr ja andere Aufgaben und hier zu schreiben ist für so bedeutende Pgmierer ja nur ein Zeitvertreib aus/bei Langeweile…
Luc :-?

Anzeige
AW: Was soll das! Es ist schon lange in VBA, aber ...
30.07.2014 08:34:45
Nepumuk
Hääääääää?
CallByName in VBA und VB6.0 ist vollkommen identisch. Und das VB6.0 die Grundlage von VBA ist wirst du wohl nicht bestreiten, es benutzt die identischen Runtime-Bibliotheken.
Nebenbei, ich habe 10 Jahre eher als du mit Pgmieren begonnen
Wow, 1968 war ich gerade mal 10 Jahre alt, da kannte ich das Wort Computer noch gar nicht.
Gruß
Nepumuk

Neben dem zeitlichen, gibt's noch ein ...
31.07.2014 16:50:02
Luc:-?
…konzeptionelles „nachträglich“, Nepumuk,
und in der BasisSprache (damit ist nicht VB6.0 gemeint) von VBA scheint das wohl (wie in vielen Sprachen noch heute) gefehlt zu haben. Zumindest habe ich den Wikipedia-Artikel dahingehend interpretiert. Ursache dürfte die Nicht-Kompilierbarkeit sein, weil so etwas erst zur Laufzeit aufgelöst wdn kann.
Meine Bemerkung zur Pgmmierung bezog sich auf deine Bemerkung ggüber adis → 1980! Also folglich 1969/70 (mit 21-22), damals mit ZahlenCodes für (inzwischen längst „ausgestorbene“) KR → MOPS, FIPS, GIPS. Später musste ich noch PL/1 (mit ** statt ^, für GR; ansatzweise) erlernen. Ab ca 1997 habe ich mich um VBA (VB6.0-Basis) bemüht, nachdem kurz zuvor Basic, OpenScript und Lingo angesagt waren. Dazwischen lagen die Projektierungsjahre mit Beurteilung jeweiliger PseudoCode-Entwürfe.
Übrigens wirst du doch sicher zugeben, dass ein Beitrag, quasi als AW unter einen anderen gesetzt und dann vom Verfasser dieses anderen schon im Betreff in der der 3.Person sprechend, eine zumindest grobe Unhöflichkeit darstellt, sozusagen ein Affront! :-|
Gruß, Luc :-?

Anzeige
AW: Neben dem zeitlichen, gibt's noch ein ...
01.08.2014 20:35:29
Adis
Hallo
das Forum ist sehr interessant. Man kann sogar psychologische Studien machen.
1958 ist im Chinesischen Horoskop übrigens ein Erd Hase. Das ist nicht abwertend gemeint.
Wer sich damit auskennt weiss, das es nur die typischen Charaktereigenschaften beschreibt.
Auf ein Duell mit Nepumuk lege ich keinen Wert. Ihn kann ich nicht schlagen, er ist zu schnell...
Ein Tiger, mein Horoskop, amüsiert sich höchstens wenn ein Hase eine -350 kg- Raubkatze angreift.
Wo aber berechtigte Kritik im Spiel war, wie beim End Befehl, lasse ich mich auch belehren.
Gruss Adis

Anzeige
Mein Interessengebiet (in VBA) ist dem von ...
02.08.2014 03:52:43
...
…ProfiPgmierern wie Nepumuk nicht deckungsgleich, Adis;
und in und über deren Domänen würde ich auch nicht streiten. Aber ich kann natürlich auch so etwas nicht einfach auf sich beruhen lassen, zumal bei einem bestimmten Teilaspekt der Handhabung von VBA (über den ich schon mal mit ihm stritt) auch die Meinungen der Profis (zu recht!) divergieren.
Übrigens, von Horoskopen halte ich nichts, weder von europäischen noch chinesischen, wenn auch (wie so oft) ein Körnchen Wahrheit darin stecken mag, aber eben nicht auf der Grundlage ihrer astro(un­)logischen Basis. Dahinter mag nur falsch erinnertes und fehlinterpretiertes Restwissen der Präantike stecken. Da kann man dann auch gleich glauben, dass die Erde eine Scheibe sei… ;-]
Gruß, Luc :-?
Anzeige

323 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige